Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b53b0c14da 
								
							 
						 
						
							
							
								
								gh-135608: Add a null check for attribute promotion to fix a JIT crash (GH-135613)  
							
							... 
							
							
							
							Co-authored-by: devdanzin <74280297+devdanzin@users.noreply.github.com> 
							
						 
						
							2025-06-20 14:33:35 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9731dd2c8d 
								
							 
						 
						
							
							
								
								GH-135379: Specialize int operations for compact ints only (GH-135668)  
							
							
							
						 
						
							2025-06-19 11:10:29 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								fba5dded6d 
								
							 
						 
						
							
							
								
								gh-134584: Decref elimination for float ops in the JIT (GH-134588)  
							
							... 
							
							
							
							This PR adds a PyJitRef API to the JIT's optimizer that mimics the _PyStackRef API. This allows it to track references and their stack lifetimes properly. Thus opening up the doorway to refcount elimination in the JIT. 
							
						 
						
							2025-06-17 23:25:53 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nadeshiko Manju 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								667a86e076 
								
							 
						 
						
							
							
								
								gh-131798: JIT: replace _CHECK_METHOD_VERSION with _CHECK_FUNCTION_VERSION_INLINE (GH-135022)  
							
							... 
							
							
							
							Signed-off-by: Manjusaka <me@manjusaka.me>
Co-authored-by: Brandt Bucher <brandtbucher@gmail.com> 
							
						 
						
							2025-06-16 13:25:50 +08: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Noam Cohen 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b150b6aca7 
								
							 
						 
						
							
							
								
								gh-131798: Optimize _UNARY_INVERT (GH-135222)  
							
							
							
						 
						
							2025-06-09 18:33:18 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Amit Lavon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8fdbbf8b18 
								
							 
						 
						
							
							
								
								GH-131798: Type-propagate string/list/tuple slices (GH-134671)  
							
							
							
						 
						
							2025-06-07 14:08:44 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								46151648ca 
								
							 
						 
						
							
							
								
								GH-131798: Optimize away type(x) in the JIT when the result is known (GH-135194)  
							
							
							
						 
						
							2025-06-06 16:44:43 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b90ecea9e6 
								
							 
						 
						
							
							
								
								GH-132554:  Fix tier2 FOR_ITER implementation and optimizations (GH-135137)  
							
							
							
						 
						
							2025-06-05 18:53:57 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Noam Cohen 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								79d81f7cba 
								
							 
						 
						
							
							
								
								gh-131798: Optimize _ITER_CHECK_TUPLE (GH-134803)  
							
							
							
						 
						
							2025-05-28 02:30:17 +08: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								484e00379b 
								
							 
						 
						
							
							
								
								GH-131798: Optimize away isinstance calls in the JIT (GH-134369)  
							
							
							
						 
						
							2025-05-22 12:52:47 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ec736e7dae 
								
							 
						 
						
							
							
								
								GH-131798: Optimize cached class attributes and methods in the JIT (GH-134403)  
							
							
							
						 
						
							2025-05-22 11:15:03 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nadeshiko Manju 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8c5e5557c6 
								
							 
						 
						
							
							
								
								GH-131798: Turn _LOAD_SMALL_INT into _LOAD_CONST_INLINE_BORROW in the JIT (GH-134406)  
							
							
							
						 
						
							2025-05-22 09:54:57 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2f0570caf4 
								
							 
						 
						
							
							
								
								GH-131798: Narrow types more aggressively in the JIT (GH-134373)  
							
							
							
						 
						
							2025-05-20 18:09:51 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nadeshiko Manju 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e1c0c451a2 
								
							 
						 
						
							
							
								
								GH-131798: Narrow the return type of _GET_LEN to int (GH-133345)  
							
							
							
						 
						
							2025-05-20 18:02:50 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6dcb0fdfe0 
								
							 
						 
						
							
							
								
								GH-134282: Always borrow references LOAD_CONST (GH-134284)  
							
							
							
						 
						
							2025-05-20 11:24:11 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a7f317d730 
								
							 
						 
						
							
							
								
								GH-131798: Add _POP_CALL_TWO_LOAD_CONST_INLINE_BORROW (GH-134268)  
							
							
							
						 
						
							2025-05-19 18:00:53 -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. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8d490b3687 
								
							 
						 
						
							
							
								
								GH-131798: Narrow the return type of isinstance for some known arguments in the JIT (GH-133172)  
							
							
							
						 
						
							2025-05-19 13:19:24 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c492ac7252 
								
							 
						 
						
							
							
								
								GH-131798: Split up and optimize CALL_ISINSTANCE (GH-133339)  
							
							
							
						 
						
							2025-05-08 14:26:30 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3f2f59a91d 
								
							 
						 
						
							
							
								
								gh-133273: Keep instruction definitions in bytecodes.c and optimizer_bytecodes.c in sync  (GH-133320)  
							
							
							
						 
						
							2025-05-09 01:54:49 +08: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ddac7ac59a 
								
							 
						 
						
							
							
								
								gh-132744: Check recursion limit in CALL_PY_GENERAL (GH-132746)  
							
							
							
						 
						
							2025-05-02 17:36:29 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5529213d4e 
								
							 
						 
						
							
							
								
								gh-100239: specialize BINARY_OP/SUBSCR for list-slice ( #132626 )  
							
							
							
						 
						
							2025-05-01 10:28:52 +00: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nadeshiko Manju 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								614d79231d 
								
							 
						 
						
							
							
								
								gh-131798: JIT - Use sym_new_type instead of sym_new_not_null for _BUILD_STRING, _BUILD_SET (GH-132564)  
							
							... 
							
							
							
							Signed-off-by: Manjusaka <me@manjusaka.me> 
							
						 
						
							2025-04-27 20:30:28 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5e96e4fca8 
								
							 
						 
						
							
							
								
								gh-131798: JIT: Propagate the result in _BINARY_OP_SUBSCR_TUPLE_INT (GH-133003)  
							
							
							
						 
						
							2025-04-27 02:47:55 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Diego Russo 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								4c20f46fa0 
								
							 
						 
						
							
							
								
								gh-131798: JIT: Narrow the return type of _CALL_LEN to int ( #132940 )  
							
							... 
							
							
							
							Reduce unnecessary guards whenever `len()` is called and used
after.
Co-authored-by: Max Bernstein <tekknolagi@gmail.com> 
							
						 
						
							2025-04-26 02:57:42 +08: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								4f7f72ce34 
								
							 
						 
						
							
							
								
								GH-130415: Improve the JIT's unneeded uop removal pass (GH-132333)  
							
							
							
						 
						
							2025-04-21 09:58:55 -07: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nadeshiko Manju 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b9e88ff4cb 
								
							 
						 
						
							
							
								
								gh-131798: Use sym_new_type instead of sym_new_not_null for _BUILD_LIST, _BUILD_SLICE, and _BUILD_MAP (GH-132434)  
							
							... 
							
							
							
							---------
Signed-off-by: Manjusaka <me@manjusaka.me> 
							
						 
						
							2025-04-17 01:17:48 +08: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nadeshiko Manju 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d753d8aed7 
								
							 
						 
						
							
							
								
								GH-131798: Narrow the result of _CONTAINS_OP_DICT to bool in the JIT (GH-132269)  
							
							... 
							
							
							
							Co-authored-by: Tomas R. <tomas.roun8@gmail.com> 
							
						 
						
							2025-04-08 09:12:09 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								71009cb835 
								
							 
						 
						
							
							
								
								GH-131798: Narrow the result type of _BINARY_OP_SUBSCR_STR_INT to str in the JIT (GH-132153)  
							
							
							
						 
						
							2025-04-08 08:22:54 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								85bc489b64 
								
							 
						 
						
							
							
								
								GH-131798: Narrow the result of _CONTAINS_OP_SET to bool in the JIT (GH-132057)  
							
							
							
						 
						
							2025-04-05 15:56:01 -07: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 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3a8cefba0b 
								
							 
						 
						
							
							
								
								GH-131726: Split up _CHECK_VALIDITY_AND_SET_IP (GH-131810)  
							
							
							
						 
						
							2025-04-01 16:55:05 -07: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Amit Lavon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								685fd74f81 
								
							 
						 
						
							
							
								
								GH-131798: Remove type checks for _TO_BOOL_STR (GH-131816)  
							
							
							
						 
						
							2025-03-30 16:07:25 -07:00