Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8dd8b5c2f0 
								
							 
						 
						
							
							
								
								GH-135379: Support limited scalar replacement for replicated uops in the JIT code generator. (GH-135563)  
							
							... 
							
							
							
							* Use it to support efficient specializations of COPY and SWAP in the JIT. 
							
						 
						
							2025-06-17 13:43:09 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7b15873ed0 
								
							 
						 
						
							
							
								
								gh-135474: Specialize arithmetic only on compact ints (GH-135479)  
							
							... 
							
							
							
							Specialize arithmetic only on compact ints. This also makes int operations non-escaping in the JIT and in tier 1. 
							
						 
						
							2025-06-14 17:13:32 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c87b5b2cb6 
								
							 
						 
						
							
							
								
								GH-135379: Remove types from stack items in code generator. (GH-135384)  
							
							... 
							
							
							
							* Make casts explicit in the instruction definitions 
							
						 
						
							2025-06-11 15:52:25 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b90ecea9e6 
								
							 
						 
						
							
							
								
								GH-132554:  Fix tier2 FOR_ITER implementation and optimizations (GH-135137)  
							
							
							
						 
						
							2025-06-05 18:53:57 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ce6a6371a2 
								
							 
						 
						
							
							
								
								GH-134879: Fix INSTRUMENT_FOR_ITER for list/tuple ( #134897 )  
							
							... 
							
							
							
							Fix INSTRUMENT_FOR_ITER for list/tuple 
							
						 
						
							2025-05-30 07:11:42 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f6f4e8a662 
								
							 
						 
						
							
							
								
								GH-132554: "Virtual" iterators (GH-132555)  
							
							... 
							
							
							
							* FOR_ITER now pushes either the iterator and NULL or leaves the iterable and pushes tagged zero
* NEXT_ITER uses the tagged int as the index into the sequence or, if TOS is NULL, iterates as before. 
							
						 
						
							2025-05-27 15:59:45 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6dcb0fdfe0 
								
							 
						 
						
							
							
								
								GH-134282: Always borrow references LOAD_CONST (GH-134284)  
							
							
							
						 
						
							2025-05-20 11:24:11 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Diego Russo 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								42d03f3933 
								
							 
						 
						
							
							
								
								GH-131798: Split CALL_LIST_APPEND into several uops (GH-134240)  
							
							
							
						 
						
							2025-05-19 15:48:55 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c492ac7252 
								
							 
						 
						
							
							
								
								GH-131798: Split up and optimize CALL_ISINSTANCE (GH-133339)  
							
							
							
						 
						
							2025-05-08 14:26:30 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								296cd128bf 
								
							 
						 
						
							
							
								
								Revert "gh-133395: add option for extension modules to specialize BINARY_OP/SUBSCR, apply to arrays ( #133396 )" ( #133498 )  
							
							
							
						 
						
							2025-05-06 13:12:26 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Diego Russo 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9cc77aaf9d 
								
							 
						 
						
							
							
								
								GH-131798: Split CALL_LEN into several uops (GH-133180)  
							
							
							
						 
						
							2025-05-05 14:31:48 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								082dbf7788 
								
							 
						 
						
							
							
								
								gh-133395: add option for extension modules to specialize BINARY_OP/SUBSCR, apply to arrays ( #133396 )  
							
							
							
						 
						
							2025-05-05 17:46:56 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ac7d5ba96e 
								
							 
						 
						
							
							
								
								GH-133231: Changes to executor management to support proposed sys._jit module (GH-133287)  
							
							... 
							
							
							
							* Track the current executor, not the previous one, on the thread-state. 
* Batch executors for deallocation to avoid having to constantly incref executors; this is an ad-hoc form of deferred reference counting. 
							
						 
						
							2025-05-04 10:05:35 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ddac7ac59a 
								
							 
						 
						
							
							
								
								gh-132744: Check recursion limit in CALL_PY_GENERAL (GH-132746)  
							
							
							
						 
						
							2025-05-02 17:36:29 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a4be3bc34f 
								
							 
						 
						
							
							
								
								gh-133258: Fix crash in test_index (GH-133262)  
							
							
							
						 
						
							2025-05-01 19:15:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5529213d4e 
								
							 
						 
						
							
							
								
								gh-100239: specialize BINARY_OP/SUBSCR for list-slice ( #132626 )  
							
							
							
						 
						
							2025-05-01 10:28:52 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Russell Keith-Magee 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6c522debc2 
								
							 
						 
						
							
							
								
								GH-125515: Remove two unused error branches. ( #133181 )  
							
							... 
							
							
							
							Remove two unused error branches in the generated bytecode handling. 
							
						 
						
							2025-05-01 06:21:57 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Lysandros Nikolaou 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								60202609a2 
								
							 
						 
						
							
							
								
								gh-132661: Implement PEP 750 ( #132662 )  
							
							... 
							
							
							
							Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Wingy <git@wingysam.xyz>
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
Co-authored-by: Dave Peck <davepeck@gmail.com>
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Co-authored-by: Paul Everitt <pauleveritt@me.com>
Co-authored-by: sobolevn <mail@sobolevn.me> 
							
						 
						
							2025-04-30 11:46:41 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b329096cfb 
								
							 
						 
						
							
							
								
								GH-125515: Mark code after "return" as unreachable in the cases generator ( #133178 )  
							
							... 
							
							
							
							Mark code after "return" as unreachable 
							
						 
						
							2025-04-30 00:21:14 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ccf1b0b1c1 
								
							 
						 
						
							
							
								
								GH-132508: Use tagged integers on the evaluation stack for the last instruction offset (GH-132545)  
							
							
							
						 
						
							2025-04-29 18:00:35 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								622300bdfa 
								
							 
						 
						
							
							
								
								GH-132554: Add stats for GET_ITER (GH-132592)  
							
							... 
							
							
							
							* Add stats for GET_ITER
* Look for common iterable types, not iterator types
* Add stats for self iter and fix naming in summary 
							
						 
						
							2025-04-29 09:00:14 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								08e3389e8c 
								
							 
						 
						
							
							
								
								GH-131798: Split up and optimize CALL_TUPLE_1 in the JIT (GH-132851)  
							
							
							
						 
						
							2025-04-24 15:55:03 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0a387b311e 
								
							 
						 
						
							
							
								
								GH-131798: Split up and optimize CALL_STR_1 in the JIT (GH-132849)  
							
							
							
						 
						
							2025-04-24 12:54:46 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a6a3dbb7db 
								
							 
						 
						
							
							
								
								GH-131798: JIT: Split CALL_TYPE_1 into several uops (GH-132419)  
							
							
							
						 
						
							2025-04-22 09:30:38 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Sam Gross 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								da53660f35 
								
							 
						 
						
							
							
								
								gh-131586: Avoid refcount contention in context managers (gh-131851)  
							
							... 
							
							
							
							This avoid reference count contention in the free threading build
when calling special methods like `__enter__` and `__exit__`. 
							
						 
						
							2025-04-21 15:54:25 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Bénédikt Tran 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8a9c6c4d16 
								
							 
						 
						
							
							
								
								gh-128398: improve error messages when incorrectly using with and async with ( #132218 )  
							
							... 
							
							
							
							Improve the error message with a suggestion when an object supporting the synchronous
(resp. asynchronous) context manager protocol is entered using `async with` (resp. `with`)
instead of `with` (resp. `async with`). 
							
						 
						
							2025-04-19 10:44:01 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								40ae88988c 
								
							 
						 
						
							
							
								
								GH-131498: Replace single-element arrays with scalars in bytecodes.c (GH-132615)  
							
							
							
						 
						
							2025-04-18 07:16:28 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Bénédikt Tran 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								379352620c 
								
							 
						 
						
							
							
								
								gh-132097: use a macro for semantically casting function pointers ( #132406 )  
							
							
							
						 
						
							2025-04-18 12:24:34 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								844596c09f 
								
							 
						 
						
							
							
								
								GH-131498: Cases generator: Allow input and 'peek' variables to be modified (GH-132506)  
							
							
							
						 
						
							2025-04-14 12:19:53 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								20926c73b5 
								
							 
						 
						
							
							
								
								GH-131798: Remove JIT guards for dict, frozenset, list, set, and tuple (GH-132289)  
							
							
							
						 
						
							2025-04-09 14:32:21 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Peter Bierma 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ac3c439cdf 
								
							 
						 
						
							
							
								
								gh-131998: Fix NULL dereference when using an unbound method descriptor in a specialized code path ( #132000 )  
							
							... 
							
							
							
							Co-authored-by: sobolevn <mail@sobolevn.me>
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Mark Shannon <mark@hotpy.org> 
							
						 
						
							2025-04-08 10:31:43 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									sobolevn 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c0661df42a 
								
							 
						 
						
							
							
								
								gh-132011: Fix crash on invalid CALL_LIST_APPEND deoptimization ( #132018 )  
							
							... 
							
							
							
							Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com> 
							
						 
						
							2025-04-06 19:10:39 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7099c75550 
								
							 
						 
						
							
							
								
								GH-131498: Cases generator: manage stacks automatically (GH-132074)  
							
							
							
						 
						
							2025-04-04 17:59:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ad053d8d6a 
								
							 
						 
						
							
							
								
								GH-131498: Cases generator: Parse down to C statement level. (GH-131948)  
							
							... 
							
							
							
							* Parse down to statement level in the cases generator
* Add handling for #if macros, treating them much like normal ifs. 
							
						 
						
							2025-04-02 16:31:59 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1a9d4a1fb3 
								
							 
						 
						
							
							
								
								GH-131798: Allow the JIT to remove more int/float/str guards (GH-131800)  
							
							
							
						 
						
							2025-04-01 15:10:15 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									mpage 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								053c285f6b 
								
							 
						 
						
							
							
								
								gh-130704: Strength reduce LOAD_FAST{_LOAD_FAST} ( #130708 )  
							
							... 
							
							
							
							Optimize `LOAD_FAST` opcodes into faster versions that load borrowed references onto the operand stack when we can prove that the lifetime of the local outlives the lifetime of the temporary that is loaded onto the stack. 
							
						 
						
							2025-04-01 10:18:42 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c535a132e4 
								
							 
						 
						
							
							
								
								GH-131498: Another refactoring of the code generator (GH-131827)  
							
							... 
							
							
							
							* Rename 'defined' attribute to 'in_local' to more accurately reflect how it is used
* Make death of variables explicit even for array variables.
* Convert in_memory from boolean to stack offset
* Don't apply liveness analyis to optimizer generated code
* Add 'out' parameter to stack.pop 
							
						 
						
							2025-03-31 13:52:48 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Amit Lavon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								685fd74f81 
								
							 
						 
						
							
							
								
								GH-131798: Remove type checks for _TO_BOOL_STR (GH-131816)  
							
							
							
						 
						
							2025-03-30 16:07:25 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dino Viehland 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2984ff9e51 
								
							 
						 
						
							
							
								
								gh-130373: Avoid locking in _LOAD_ATTR_WITH_HINT ( #130372 )  
							
							... 
							
							
							
							Avoid locking in _LOAD_ATTR_WITH_HINT 
							
						 
						
							2025-03-28 15:16:41 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2c8f329dc6 
								
							 
						 
						
							
							
								
								gh-131738: optimize builtin any/all/tuple calls with a generator expression arg ( #131737 )  
							
							
							
						 
						
							2025-03-28 10:35:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d836d287a7 
								
							 
						 
						
							
							
								
								GH-131729: Consider in-memory state when merging storage and stack (GH-131773)  
							
							
							
						 
						
							2025-03-27 08:32:45 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Sam Gross 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3d4ac1a2c2 
								
							 
						 
						
							
							
								
								gh-123358: Use _PyStackRef in LOAD_DEREF (gh-130064)  
							
							... 
							
							
							
							Concurrent accesses from multiple threads to the same `cell` object did not
scale well in the free-threaded build. Use `_PyStackRef` and optimistically
avoid locking to improve scaling.
With the locks around cell reads gone, some of the free threading tests were
prone to starvation: the readers were able to run in a tight loop and the
writer threads weren't scheduled frequently enough to make timely progress.
Adjust the tests to avoid this.
Co-authored-by: Donghee Na <donghee.na@python.org> 
							
						 
						
							2025-03-26 12:08:20 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1b8bb1ed0c 
								
							 
						 
						
							
							
								
								GH-131729: Code-gen better liveness analysis (GH-131732)  
							
							... 
							
							
							
							* Rename 'defined' attribute to 'in_local' to more accurately reflect how it is used
* Make death of variables explicit even for array variables.
* Convert in_memory from boolean to stack offset
* Don't apply liveness analysis to optimizer generated code
* Fix RETURN_VALUE in optimizer 
							
						 
						
							2025-03-26 15:21:35 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dino Viehland 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d9411ae3c2 
								
							 
						 
						
							
							
								
								gh-130312: SET_ADD should not lock ( #130136 )  
							
							... 
							
							
							
							SET_ADD should not lock 
							
						 
						
							2025-03-21 15:58:32 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7ebd71ee14 
								
							 
						 
						
							
							
								
								GH-131498: Remove conditional stack effects (GH-131499)  
							
							... 
							
							
							
							* Adds some missing #includes 
							
						 
						
							2025-03-20 15:39:38 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Xuanteng Huang 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1821f8f10c 
								
							 
						 
						
							
							
								
								gh-131281: fix compile error due to BINARY_SUBSCR (GH-131283)  
							
							... 
							
							
							
							* fix compile error due to `BINARY_SUBSCR`
* replace stat_inc with `BINARY_OP` 
							
						 
						
							2025-03-15 23:38:46 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									T. Wouters 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								de2f7da77d 
								
							 
						 
						
							
							
								
								gh-115999: Add free-threaded specialization for FOR_ITER ( #128798 )  
							
							... 
							
							
							
							Add free-threaded versions of existing specialization for FOR_ITER (list, tuples, fast range iterators and generators), without significantly affecting their thread-safety. (Iterating over shared lists/tuples/ranges should be fine like before. Reusing iterators between threads is not fine, like before. Sharing generators between threads is a recipe for significant crashes, like before.) 
							
						 
						
							2025-03-12 16:21:46 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2bef8ea8ea 
								
							 
						 
						
							
							
								
								GH-127705: Use _PyStackRefs in the default build. (GH-127875)  
							
							
							
						 
						
							2025-03-10 14:06:56 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								89df62c120 
								
							 
						 
						
							
							
								
								GH-128534: Fix behavior of branch monitoring for async for (GH-130847)  
							
							... 
							
							
							
							* Both branches in a pair now have a common source and are included in co_branches 
							
						 
						
							2025-03-07 14:30:31 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Sam Gross 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a025f27d94 
								
							 
						 
						
							
							
								
								gh-130920: Fix data race in STORE_SUBSCR_LIST_INT ( #130923 )  
							
							... 
							
							
							
							The write of the item to the list needs to use an atomic operation in
the free threading build.
Co-authored-by: Tomasz Pytel <tompytel@gmail.com> 
							
						 
						
							2025-03-06 15:59:48 -05:00