Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								48be46ec1f 
								
							 
						 
						
							
							
								
								bpo-46072: Add some object layout and allocation stats (GH-31051)  
							
							
							
						 
						
							2022-02-01 15:05:18 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								90ab138bbd 
								
							 
						 
						
							
							
								
								bpo-46072: Add simple stats for Python calls. (GH-30989)  
							
							
							
						 
						
							2022-01-28 15:20:33 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								89fd7c3452 
								
							 
						 
						
							
							
								
								bpo-46329: Split calls into precall and call instructions. (GH-30855)  
							
							... 
							
							
							
							* Add PRECALL_FUNCTION opcode.
* Move 'call shape' varaibles into struct.
* Replace CALL_NO_KW and CALL_KW with KW_NAMES and CALL instructions.
* Specialize for builtin methods taking using the METH_FASTCALL | METH_KEYWORDS protocol.
* Allow kwnames for specialized calls to builtin types.
* Specialize calls to tuple(arg) and str(arg). 
							
						 
						
							2022-01-28 12:42:30 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Kumar Aditya 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d1beb241d9 
								
							 
						 
						
							
							
								
								bpo-46486: Fixed misspelled name DesciptorClassification  
							
							
							
						 
						
							2022-01-23 16:03:50 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7835cbf949 
								
							 
						 
						
							
							
								
								bpo-46417: Use _PyType_CAST() in Python directory (GH-30769)  
							
							
							
						 
						
							2022-01-21 23:30:17 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b04dfbbe4b 
								
							 
						 
						
							
							
								
								bpo-46409: Make generators in bytecode (GH-30633)  
							
							... 
							
							
							
							* Add RETURN_GENERATOR and JUMP_NO_INTERRUPT opcodes.
* Trim frame and generator by word each.
* Minor refactor of frame.c
* Update test.test_sys to account for smaller frames.
* Treat generator functions as normal functions when evaluating and specializing. 
							
						 
						
							2022-01-20 11:46:39 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Kumar Aditya 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a4bc2218d2 
								
							 
						 
						
							
							
								
								bpo-46405: fix msvc compiler warnings (GH-30627)  
							
							
							
						 
						
							2022-01-17 16:30:10 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dennis Sweeney 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7537f60087 
								
							 
						 
						
							
							
								
								bpo-45609: More specialization stats for STORE_SUBSCR (GH-30193)  
							
							
							
						 
						
							2022-01-04 18:05:09 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								efd6236d36 
								
							 
						 
						
							
							
								
								bpo-46072:  Add top level stats struct (GH-30169)  
							
							
							
						 
						
							2021-12-17 14:48:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								86f42851c0 
								
							 
						 
						
							
							
								
								Better randomization of stats filenames. (GH-30145)  
							
							
							
						 
						
							2021-12-16 15:56:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								62a8a0c522 
								
							 
						 
						
							
							
								
								bpo-45829: Check __getitem__'s version for overflow before specializing (GH-30129)  
							
							... 
							
							
							
							* Check __getitem__'s version for overflow.
* Use SPEC_FAIL_OUT_OF_VERSIONS instead 
							
						 
						
							2021-12-16 11:08:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								342b93f9f2 
								
							 
						 
						
							
							
								
								bpo-46072: Add --with-pystats configure option to simplify gathering of VM stats (GH-30116)  
							
							... 
							
							
							
							* Simplify specialization stats collection macros.
* Add --enable-pystats option to configure.
* Update specialization summary script to handle larger number of kinds 
							
						 
						
							2021-12-15 15:32:32 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3a60bfef49 
								
							 
						 
						
							
							
								
								bpo-44525: Specialize for calls to type and other builtin classes with 1 argument. (GH-29942)  
							
							
							
						 
						
							2021-12-15 15:03:42 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9f8f45144b 
								
							 
						 
						
							
							
								
								bpo-44525: Split calls into PRECALL and CALL (GH-30011)  
							
							... 
							
							
							
							* Add 3 new opcodes for calls: PRECALL_METHOD, CALL_NO_KW, CALL_KW.
* Update specialization to handle new CALL opcodes.
* Specialize call to method descriptors.
* Remove old CALL opcodes: CALL_FUNCTION, CALL_METHOD, CALL_METHOD_KW, CALL_FUNCTION_KW. 
							
						 
						
							2021-12-14 18:22:44 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5de39f4b41 
								
							 
						 
						
							
							
								
								bpo-45510: Check both types when specializing subtraction (GH-29995)  
							
							
							
						 
						
							2021-12-09 10:17:16 +09:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8319114fee 
								
							 
						 
						
							
							
								
								bpo-45947: Place dict and values pointer at fixed (negative) offset just before GC header. (GH-29879)  
							
							... 
							
							
							
							* Place __dict__ immediately before GC header for plain Python objects.
* Fix up lazy dict creation logic to use managed dict pointers.
* Manage values pointer, placing them directly before managed dict pointers.
* Convert hint-based load/store attr specialization target managed dict classes.
* Specialize LOAD_METHOD for managed dict objects.
* Remove unsafe _PyObject_GC_Calloc function.
* Remove unsafe _PyObject_GC_Malloc() function.
* Add comment explaning use of Py_TPFLAGS_MANAGED_DICT. 
							
						 
						
							2021-12-07 16:02:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dennis Sweeney 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								03768c4d13 
								
							 
						 
						
							
							
								
								bpo-45885: Specialize COMPARE_OP (GH-29734)  
							
							... 
							
							
							
							* Add COMPARE_OP_ADAPTIVE adaptive instruction.
* Add COMPARE_OP_FLOAT_JUMP, COMPARE_OP_INT_JUMP and COMPARE_OP_STR_JUMP specialized instructions.
* Introduce and use _PyUnicode_Equal 
							
						 
						
							2021-12-03 11:29:12 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								135cabd328 
								
							 
						 
						
							
							
								
								bpo-44525: Copy free variables in bytecode to allow calls to inner functions to be specialized (GH-29595)  
							
							... 
							
							
							
							* Make internal APIs that take PyFrameConstructor take a PyFunctionObject instead.
* Add reference to function to frame, borrow references to builtins and globals.
* Add COPY_FREE_VARS instruction to allow specialization of calls to inner functions. 
							
						 
						
							2021-11-23 09:53:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dennis Sweeney 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								036fead695 
								
							 
						 
						
							
							
								
								bpo-45609: Specialize STORE_SUBSCR (GH-29242)  
							
							... 
							
							
							
							* Specialize STORE_SUBSCR for list[int], and dict[object]
* Adds _PyDict_SetItem_Take2 which consumes references to the key and values. 
							
						 
						
							2021-11-19 10:30:37 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								21fa7a3e8f 
								
							 
						 
						
							
							
								
								bpo-45829: Specialize BINARY_SUBSCR for __getitem__ implemented in Python. (GH-29592)  
							
							
							
						 
						
							2021-11-18 11:02:14 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dong-hee Na 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								345ba3f080 
								
							 
						 
						
							
							
								
								bpo-45510: Specialize BINARY_SUBTRACT (GH-29523)  
							
							
							
						 
						
							2021-11-18 09:19:58 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ec382fac0d 
								
							 
						 
						
							
							
								
								bpo-45636: Remove the old %-formatting fast-path (GH-29532)  
							
							
							
						 
						
							2021-11-15 08:58:23 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9178f533ff 
								
							 
						 
						
							
							
								
								bpo-45636: Merge all numeric operators (GH-29482)  
							
							
							
						 
						
							2021-11-10 22:56:22 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								bc85eb7a4f 
								
							 
						 
						
							
							
								
								bpo-45527: Don't count cache hits, just misses. (GH-29092)  
							
							
							
						 
						
							2021-10-20 20:53:48 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8863a0fcc5 
								
							 
						 
						
							
							
								
								bpo-44525: Specialize simple Python calls. (GH-29033)  
							
							
							
						 
						
							2021-10-20 16:08:28 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3163e68c34 
								
							 
						 
						
							
							
								
								bpo-44525: Specialize `CALL_FUNCTION` for C function calls (GH-26934)  
							
							
							
						 
						
							2021-10-20 00:16:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dong-hee Na 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								fd03917786 
								
							 
						 
						
							
							
								
								bpo-45434: Include stdlib.h for specialize stat (GH-29015)  
							
							
							
						 
						
							2021-10-18 17:31:18 +09:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dennis Sweeney 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3b3d30e8f7 
								
							 
						 
						
							
							
								
								bpo-45367: Specialize BINARY_MULTIPLY (GH-28727)  
							
							
							
						 
						
							2021-10-14 15:56:33 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a8b9350964 
								
							 
						 
						
							
							
								
								bpo-45340: Don't create object dictionaries unless actually needed (GH-28802)  
							
							... 
							
							
							
							* Never change types' cached keys. It could invalidate inline attribute objects.
* Lazily create object dictionaries.
* Update specialization of LOAD/STORE_ATTR.
* Don't update shared keys version for deletion of value.
* Update gdb support to handle instance values.
* Rename SPLIT_KEYS opcodes to INSTANCE_VALUE. 
							
						 
						
							2021-10-13 14:19:34 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Christian Clauss 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								db693df3e1 
								
							 
						 
						
							
							
								
								Fix typos in the Python directory (GH-28767)  
							
							
							
						 
						
							2021-10-06 15:55:27 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								064464fc38 
								
							 
						 
						
							
							
								
								bpo-45219: Factor dictkey indexing (GH-28389)  
							
							
							
						 
						
							2021-09-17 12:20:51 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								70bed6f993 
								
							 
						 
						
							
							
								
								bpo-45107: Make LOAD_METHOD_CLASS safer and faster, clean up comments (GH-28177)  
							
							... 
							
							
							
							* Improve comments
* Check cls is a type, remove dict calculation 
							
						 
						
							2021-09-17 18:47:36 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								4857e53890 
								
							 
						 
						
							
							
								
								bpo-45203: fix compiler warnings (GH-28357)  
							
							... 
							
							
							
							Co-authored-by: Mark Shannon <mark@hotpy.org> 
							
						 
						
							2021-09-17 17:48:44 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								11cdf2a670 
								
							 
						 
						
							
							
								
								bpo-45203: Cleanup stats gathering code for LOAD_METHOD (GH-28352)  
							
							
							
						 
						
							2021-09-15 14:55:49 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ee9c0527ae 
								
							 
						 
						
							
							
								
								Refine specialization stats (GH-27992)  
							
							
							
						 
						
							2021-08-27 12:01:22 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d3eaf0cc5b 
								
							 
						 
						
							
							
								
								bpo-44945: Specialize BINARY_ADD (GH-27967)  
							
							
							
						 
						
							2021-08-27 09:21:01 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								96346cb6d0 
								
							 
						 
						
							
							
								
								bpo-44889: Specialize LOAD_METHOD with PEP 659 adaptive interpreter (GH-27722)  
							
							... 
							
							
							
							Adds four new instructions:
* LOAD_METHOD_ADAPTIVE
* LOAD_METHOD_CACHED
* LOAD_METHOD_MODULE
* LOAD_METHOD_CLASS 
							
						 
						
							2021-08-17 15:55:55 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								4f51fa9e2d 
								
							 
						 
						
							
							
								
								bpo-44900: Add five superinstructions. (GH-27741)  
							
							... 
							
							
							
							* LOAD_FAST LOAD_FAST
* STORE_FAST LOAD_FAST
* LOAD_FAST LOAD_CONST
* LOAD_CONST LOAD_FAST
* STORE_FAST STORE_FAST 
							
						 
						
							2021-08-16 12:23:13 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8ac0886091 
								
							 
						 
						
							
							
								
								bpo-44890: collect specialization stats if Py_DEBUG (GH-27731)  
							
							
							
						 
						
							2021-08-12 12:15:06 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								64a7812c17 
								
							 
						 
						
							
							
								
								Update test__opcode and _Py_GetSpecializationStats with recent specialization stat changes (GH-27728)  
							
							
							
						 
						
							2021-08-11 17:34:01 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9816777861 
								
							 
						 
						
							
							
								
								Classify specialization failures. Provides more useful stats, with lower overhead. (GH-27701)  
							
							
							
						 
						
							2021-08-10 14:53:05 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ac75f6bdd4 
								
							 
						 
						
							
							
								
								bpo-44826: Specialize STORE_ATTR (GH-27590)  
							
							... 
							
							
							
							* Generalize cache names for LOAD_ATTR to allow store and delete specializations.
* Factor out specialization of attribute dictionary access.
* Specialize STORE_ATTR. 
							
						 
						
							2021-08-09 10:40:21 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c83919bd63 
								
							 
						 
						
							
							
								
								Add option to write specialization stats to files and script to summarize. (GH-27575)  
							
							... 
							
							
							
							* Add option to write stats to random file in a directory.
* Add script to summarize stats. 
							
						 
						
							2021-08-04 11:39:52 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2116909b3e 
								
							 
						 
						
							
							
								
								Minor fixes to specialization stats. (GH-27457)  
							
							... 
							
							
							
							* Use class, not value for fail stats for BINARY_SUBSCR.
* Fix counts for unquickened instructions. 
							
						 
						
							2021-07-29 20:50:03 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ddd1c418c0 
								
							 
						 
						
							
							
								
								bpo-44725 : expose specialization stats in python (GH-27192)  
							
							
							
						 
						
							2021-07-29 17:26:53 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								641345d636 
								
							 
						 
						
							
							
								
								bpo-26280: Port BINARY_SUBSCR to PEP 659 adaptive interpreter (GH-27043)  
							
							
							
						 
						
							2021-07-15 13:13:12 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3623aaa78c 
								
							 
						 
						
							
							
								
								Add file describing how to add or modify specialized families of instructions. (GH-26954)  
							
							
							
						 
						
							2021-07-01 13:13:05 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								fb68791a26 
								
							 
						 
						
							
							
								
								bpo-44337: Improve LOAD_ATTR specialization (GH-26759)  
							
							... 
							
							
							
							* Specialize obj.__class__ with LOAD_ATTR_SLOT
* Specialize instance attribute lookup with attribute on class, provided attribute on class is not an overriding descriptor.
* Add stat for how many times the unquickened instruction has executed. 
							
						 
						
							2021-06-21 11:49:21 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8ebd9447e9 
								
							 
						 
						
							
							
								
								Add extra stats for attribute misses (GH-26732)  
							
							
							
						 
						
							2021-06-15 13:01:42 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								eecbc7c390 
								
							 
						 
						
							
							
								
								bpo-44338: Port LOAD_GLOBAL to PEP 659 adaptive interpreter (GH-26638)  
							
							... 
							
							
							
							* Add specializations of LOAD_GLOBAL.
* Add more stats.
* Remove old opcache; it is no longer used.
* Add NEWS 
							
						 
						
							2021-06-14 11:04:09 +01:00