Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a8d9d94784 
								
							 
						 
						
							
							
								
								GH-137959: Replace shim code in jitted code with a single trampoline function. (GH-137961)  
							
							
							
						 
						
							2025-08-21 10:40:53 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Peter Bierma 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b07a267953 
								
							 
						 
						
							
							
								
								gh-137883: Check the recursion limit for specialized keyword argument calls (GH-137887)  
							
							
							
						 
						
							2025-08-19 09:53:38 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Sam Gross 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a10152f8fd 
								
							 
						 
						
							
							
								
								gh-137400: Fix thread-safety issues when profiling all threads (gh-137518)  
							
							... 
							
							
							
							There were a few thread-safety issues when profiling or tracing all
threads via PyEval_SetProfileAllThreads or PyEval_SetTraceAllThreads:
* The loop over thread states could crash if a thread exits concurrently
  (in both the free threading and default build)
* The modification of `c_profilefunc` and `c_tracefunc` wasn't
  thread-safe on the free threading build. 
							
						 
						
							2025-08-13 14:15:12 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								af15e1d13e 
								
							 
						 
						
							
							
								
								GH-132532: Add new DSL macros to better declare semantics of exits at ends of instructions/uops. (GH-137098)  
							
							
							
						 
						
							2025-08-09 15:41:28 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e7b55f564d 
								
							 
						 
						
							
							
								
								GH-136410: Faster side exits by using a cold exit stub (GH-136411)  
							
							
							
						 
						
							2025-08-01 16:26:07 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Kumar Aditya 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								85f092f541 
								
							 
						 
						
							
							
								
								gh-115999: remove redundant check in free-threading from _STORE_ATTR_WITH_HINT ( #136249 )  
							
							
							
						 
						
							2025-07-04 09:04:47 +05:30 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e0d6500b2d 
								
							 
						 
						
							
							
								
								gh-136125: Use _PyObject_GetMethodStackRef for  LOAD_ATTR (GH-136127)  
							
							
							
						 
						
							2025-07-02 01:20:46 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								695ab61351 
								
							 
						 
						
							
							
								
								gh-132732: Automatically constant evaluate pure operations (GH-132733)  
							
							... 
							
							
							
							This adds a "macro" to the optimizer DSL called "REPLACE_OPCODE_IF_EVALUATES_PURE", which allows automatically constant evaluating a bytecode body if certain inputs have no side effects upon evaluations (such as ints, strings, and floats).
Co-authored-by: Tomas R. <tomas.roun8@gmail.com> 
							
						 
						
							2025-06-27 19:37:44 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								569fc6870f 
								
							 
						 
						
							
							
								
								gh-134584: Specialize POP_TOP by reference and type in JIT (GH-135761)  
							
							
							
						 
						
							2025-06-24 00:57:14 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ken Jin 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0243260284 
								
							 
						 
						
							
							
								
								gh-135379: Move PyLong_CheckCompact to private header and rename it (GH-135707)  
							
							
							
						 
						
							2025-06-19 13:09:09 +00: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2f0570caf4 
								
							 
						 
						
							
							
								
								GH-131798: Narrow types more aggressively in the JIT (GH-134373)  
							
							
							
						 
						
							2025-05-20 18:09:51 -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. 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Adam Turner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f21e42d906 
								
							 
						 
						
							
							
								
								Remove duplicate includes: Python/{bytecodes,ceval,optimizer_analysis}.c ( #132622 )  
							
							
							
						 
						
							2025-05-01 12:07:53 +01: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 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								732d1b0241 
								
							 
						 
						
							
							
								
								Get rid of ERROR_IF's "label" parameter (GH-132654)  
							
							
							
						 
						
							2025-04-29 17:21:53 -07: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 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								922049b613 
								
							 
						 
						
							
							
								
								gh-130907: Treat all module-level annotations as conditional ( #131550 )  
							
							
							
						 
						
							2025-04-28 06:10:28 -07: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