Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								04492cbc9a 
								
							 
						 
						
							
							
								
								GH-91095: Specialize calls to normal Python classes. (GH-99331)  
							
							
							
						 
						
							2023-06-22 09:48:19 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								33f0a8578b 
								
							 
						 
						
							
							
								
								gh-105481: generate _specializations and _specialized_instructions from bytecodes.c ( #105913 )  
							
							
							
						 
						
							2023-06-19 23:47:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1d857da7f0 
								
							 
						 
						
							
							
								
								GH-77273: Better bytecodes for f-strings (GH-6132)  
							
							
							
						 
						
							2023-06-14 16:15:08 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								09ffa69e2e 
								
							 
						 
						
							
							
								
								GH-105678: Split MAKE_FUNCTION into MAKE_FUNCTION and SET_FUNCTION_ATTRIBUTE (GH-105680)  
							
							
							
						 
						
							2023-06-13 09:51:05 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e830289c52 
								
							 
						 
						
							
							
								
								GH-105229: Remove remaining two-codeunit superinstructions (GH-105326)  
							
							... 
							
							
							
							* Remove LOAD_CONST__LOAD_FAST and LOAD_FAST__LOAD_CONST superinstructions. 
							
						 
						
							2023-06-08 12:35:34 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0689340366 
								
							 
						 
						
							
							
								
								GH-105229: Replace some superinstructions with single instruction equivalent. (GH-105230)  
							
							
							
						 
						
							2023-06-05 11:07:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								4bfa01b9d9 
								
							 
						 
						
							
							
								
								GH-104584: Plugin optimizer API (GH-105100)  
							
							
							
						 
						
							2023-06-02 11:46:18 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f40890b124 
								
							 
						 
						
							
							
								
								gh-103865: add monitoring support to LOAD_SUPER_ATTR ( #103866 )  
							
							
							
						 
						
							2023-05-16 10:29:00 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								24d8b88420 
								
							 
						 
						
							
							
								
								gh-103763: Implement PEP 695 ( #103764 )  
							
							... 
							
							
							
							This implements PEP 695, Type Parameter Syntax. It adds support for:
- Generic functions (def func[T](): ...)
- Generic classes (class X[T](): ...)
- Type aliases (type X = ...)
- New scoping when the new syntax is used within a class body
- Compiler and interpreter changes to support the new syntax and scoping rules 
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: Eric Traut <eric@traut.com>
Co-authored-by: Larry Hastings <larry@hastings.org>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-05-15 20:36:23 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								77262458fe 
								
							 
						 
						
							
							
								
								gh-87729: improve hit rate of LOAD_SUPER_ATTR specialization ( #104270 )  
							
							
							
						 
						
							2023-05-11 08:08:13 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c3b595e73e 
								
							 
						 
						
							
							
								
								gh-97933: (PEP 709) inline list/dict/set comprehensions ( #101441 )  
							
							... 
							
							
							
							Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> 
							
						 
						
							2023-05-09 11:02:14 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Juhi Chandalia 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								872cbc6132 
								
							 
						 
						
							
							
								
								GH-103963: Make dis display names of args for intrinsics opcodes ( #104029 )  
							
							
							
						 
						
							2023-05-02 19:00:17 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ef25febcf2 
								
							 
						 
						
							
							
								
								gh-87729: specialize LOAD_SUPER_ATTR_METHOD ( #103809 )  
							
							
							
						 
						
							2023-04-25 17:45:51 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0dc8b50d33 
								
							 
						 
						
							
							
								
								gh-87729: add LOAD_SUPER_ATTR instruction for faster super() ( #103497 )  
							
							... 
							
							
							
							This speeds up `super()` (by around 85%, for a simple one-level
`super().meth()` microbenchmark) by avoiding allocation of a new
single-use `super()` object on each use. 
							
						 
						
							2023-04-24 22:22:14 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								411b169281 
								
							 
						 
						
							
							
								
								GH-103082: Implementation of PEP 669: Low Impact Monitoring for CPython (GH-103083)  
							
							... 
							
							
							
							* The majority of the monitoring code is in instrumentation.c
* The new instrumentation bytecodes are in bytecodes.c
* legacy_tracing.c adapts the new API to the old sys.setrace and sys.setprofile APIs 
							
						 
						
							2023-04-12 12:04:55 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b4978ff872 
								
							 
						 
						
							
							
								
								GH-88691: Shrink the CALL caches (GH-103230)  
							
							
							
						 
						
							2023-04-05 14:15:49 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								121057aa36 
								
							 
						 
						
							
							
								
								GH-89987: Shrink the BINARY_SUBSCR caches (GH-103022)  
							
							
							
						 
						
							2023-03-29 15:53:30 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0444ae2487 
								
							 
						 
						
							
							
								
								GH-100982: Break up COMPARE_AND_BRANCH (GH-102801)  
							
							
							
						 
						
							2023-03-23 15:25:09 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3468c768ce 
								
							 
						 
						
							
							
								
								gh-102859: Remove JUMP_IF_FALSE_OR_POP and JUMP_IF_TRUE_OR_POP ( #102870 )  
							
							
							
						 
						
							2023-03-22 18:10:48 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dong-hee Na 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d77c48740f 
								
							 
						 
						
							
							
								
								gh-102674: Remove _specialization_stats from Lib/opcode.py ( #102685 )  
							
							... 
							
							
							
							It's not use except in a test, so move it there instead. 
							
						 
						
							2023-03-14 13:20:14 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								08b67fb34f 
								
							 
						 
						
							
							
								
								GH-90997: Shrink the LOAD_GLOBAL caches ( #102569 )  
							
							
							
						 
						
							2023-03-10 17:01:16 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								81e3aa835c 
								
							 
						 
						
							
							
								
								gh-101799: implement PREP_RERAISE_STAR as an intrinsic function ( #101800 )  
							
							
							
						 
						
							2023-02-14 11:54:13 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								160f2fe2b9 
								
							 
						 
						
							
							
								
								GH-87849: Simplify stack effect of SEND and specialize it for generators and coroutines. (GH-101788)  
							
							
							
						 
						
							2023-02-13 11:24:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									penguin_wwy 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								753fc8a5d6 
								
							 
						 
						
							
							
								
								gh-101632: Add the new RETURN_CONST opcode ( #101633 )  
							
							
							
						 
						
							2023-02-07 22:32:21 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e9ccfe4a63 
								
							 
						 
						
							
							
								
								gh-100712: make it possible to disable specialization (for debugging) ( #100713 )  
							
							
							
						 
						
							2023-01-19 18:14:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7b14c2ef19 
								
							 
						 
						
							
							
								
								GH-100982: Add COMPARE_AND_BRANCH instruction (GH-100983)  
							
							
							
						 
						
							2023-01-16 12:35:21 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6e4e14d98f 
								
							 
						 
						
							
							
								
								GH-100923: Embed jump mask in COMPARE_OP oparg (GH-100924)  
							
							
							
						 
						
							2023-01-11 20:40:43 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								78068126a1 
								
							 
						 
						
							
							
								
								GH-99005: More intrinsics (GH-100774)  
							
							... 
							
							
							
							* Remove UNARY_POSITIVE, LIST_TO_TUPLE and ASYNC_GEN_WRAP, replacing them with intrinsics. 
							
						 
						
							2023-01-06 14:47:57 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								28187141cc 
								
							 
						 
						
							
							
								
								GH-99005: Add CALL_INTRINSIC_1 instruction (GH-100771)  
							
							... 
							
							
							
							* Remove PRINT_EXPR instruction
* Remove STOPITERATION_ERROR instruction
* Remove IMPORT_STAR instruction 
							
						 
						
							2023-01-05 16:05:51 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f20c553a45 
								
							 
						 
						
							
							
								
								GH-100288: Remove LOAD_ATTR_METHOD_WITH_DICT instruction. (GH-100753)  
							
							
							
						 
						
							2023-01-05 12:20:09 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								36d358348d 
								
							 
						 
						
							
							
								
								Revert "gh-100288: Specialise LOAD_ATTR_METHOD for managed dictionaries (GH-100289)" ( #100468 )  
							
							... 
							
							
							
							This reverts commit c3c7848a48 
							
						 
						
							2022-12-24 01:48:43 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c3c7848a48 
								
							 
						 
						
							
							
								
								gh-100288: Specialise LOAD_ATTR_METHOD for managed dictionaries (GH-100289)  
							
							
							
						 
						
							2022-12-24 00:26:42 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								748c6c0921 
								
							 
						 
						
							
							
								
								GH-100110: Specialize FOR_ITER for tuples (GH-100109)  
							
							... 
							
							
							
							* Specialize FOR_ITER for tuples 
							
						 
						
							2022-12-09 10:27:01 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8555dee5ae 
								
							 
						 
						
							
							
								
								GH-98686: Get rid of BINARY_OP_GENERIC and COMPARE_OP_GENERIC (GH-99399)  
							
							
							
						 
						
							2022-11-17 11:36:57 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1e197e63e2 
								
							 
						 
						
							
							
								
								GH-96421: Insert shim frame on entry to interpreter (GH-96319)  
							
							... 
							
							
							
							* Adds EXIT_INTERPRETER instruction to exit PyEval_EvalDefault()
* Simplifies RETURN_VALUE, YIELD_VALUE and RETURN_GENERATOR instructions as they no longer need to check for entry frames. 
							
						 
						
							2022-11-10 12:34:57 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c7f5708714 
								
							 
						 
						
							
							
								
								GH-98686: Get rid of "adaptive" and "quick" instructions (GH-99182)  
							
							
							
						 
						
							2022-11-09 10:50:09 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								4a1c58d504 
								
							 
						 
						
							
							
								
								GH-96793: Specialize FOR_ITER for generators. (GH-98772)  
							
							
							
						 
						
							2022-11-07 14:49:51 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f4adb97506 
								
							 
						 
						
							
							
								
								GH-96793: Implement PEP 479 in bytecode. (GH-99006)  
							
							... 
							
							
							
							* Handle converting StopIteration to RuntimeError in bytecode.
* Add custom instruction for converting StopIteration into RuntimeError. 
							
						 
						
							2022-11-03 11:38:51 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								276d77724f 
								
							 
						 
						
							
							
								
								GH-98686: Quicken everything (GH-98687)  
							
							
							
						 
						
							2022-11-02 10:42:57 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								22863df7ca 
								
							 
						 
						
							
							
								
								GH-96793: Change FOR_ITER to not pop the iterator on exhaustion. (GH-96801)  
							
							... 
							
							
							
							Change FOR_ITER to have the same stack effect regardless of whether it branches or not.
Performance is unchanged as FOR_ITER (and specialized forms jump over the cleanup code). 
							
						 
						
							2022-10-27 11:55:03 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								4c72517cad 
								
							 
						 
						
							
							
								
								gh-93554: Conditional jump opcodes only jump forward (GH-96318)  
							
							
							
						 
						
							2022-09-01 21:36:47 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5bfb3c372b 
								
							 
						 
						
							
							
								
								GH-90997: Wrap yield from/await in a virtual try/except StopIteration (GH-96010)  
							
							
							
						 
						
							2022-08-19 12:33:44 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7276ca25f5 
								
							 
						 
						
							
							
								
								GH-93911: Specialize LOAD_ATTR for custom __getattribute__ (GH-93988)  
							
							
							
						 
						
							2022-08-17 12:37:07 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c57aad777a 
								
							 
						 
						
							
							
								
								gh-94216: add pseudo instructions to the dis/opcodes modules (GH-94241)  
							
							
							
						 
						
							2022-07-01 15:33:35 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c0453a40fa 
								
							 
						 
						
							
							
								
								GH-94163: Add BINARY_SLICE and STORE_SLICE instructions. (GH-94168)  
							
							
							
						 
						
							2022-06-27 12:24:23 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dennis Sweeney 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5fcfdd87c9 
								
							 
						 
						
							
							
								
								GH-91432: Specialize FOR_ITER (GH-91713)  
							
							... 
							
							
							
							* Adds FOR_ITER_LIST and FOR_ITER_RANGE specializations.
* Adds _PyLong_AssignValue() internal function to avoid temporary boxing of ints. 
							
						 
						
							2022-06-21 11:19:26 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a51742ab82 
								
							 
						 
						
							
							
								
								gh-93911: Specialize LOAD_ATTR_PROPERTY (GH-93912)  
							
							
							
						 
						
							2022-06-17 23:13:17 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b083450f88 
								
							 
						 
						
							
							
								
								GH-93429: Merge LOAD_METHOD back into LOAD_ATTR (GH-93430)  
							
							
							
						 
						
							2022-06-14 11:36:22 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3cd1a5d3ec 
								
							 
						 
						
							
							
								
								GH-93516: Store offset of first traceable instruction in code object (GH-93769)  
							
							
							
						 
						
							2022-06-14 11:09:30 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f012df706c 
								
							 
						 
						
							
							
								
								Shrink the LOAD_METHOD cache by one codeunit. ( #93537 )  
							
							
							
						 
						
							2022-06-07 10:28:53 +01:00