Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								27580c1fb5 
								
							 
						 
						
							
							
								
								Replace PyObject_CallFunctionObjArgs() with fastcall  
							
							... 
							
							
							
							* PyObject_CallFunctionObjArgs(func, NULL) => _PyObject_CallNoArg(func)
* PyObject_CallFunctionObjArgs(func, arg, NULL) => _PyObject_CallArg1(func, arg)
PyObject_CallFunctionObjArgs() allocates 40 bytes on the C stack and requires
extra work to "parse" C arguments to build a C array of PyObject*.
_PyObject_CallNoArg() and _PyObject_CallArg1() are simpler and don't allocate
memory on the C stack.
This change is part of the fastcall project. The change on listsort() is
related to the issue #23507 . 
							
						 
						
							2016-12-01 14:43:22 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								8be1c39eb3 
								
							 
						 
						
							
							
								
								Backed out changeset 7efddbf1aa70  
							
							
							
						 
						
							2016-11-30 12:10:54 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								ebea9988e0 
								
							 
						 
						
							
							
								
								Uniformize argument names of "call" functions  
							
							... 
							
							
							
							* Callable object: callable, o, callable_object => func
* Object for method calls: o => obj
* Method name: name or nameid => method
Cleanup also the C code:
* Don't initialize variables to NULL if they are not used before their first
  assignement
* Add braces for readability 
							
						 
						
							2016-11-29 18:47:56 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								baa7223bcd 
								
							 
						 
						
							
							
								
								Issue  #28797 : Modifying the class __dict__ inside the __set_name__ method of  
							
							... 
							
							
							
							a descriptor that is used inside that class no longer prevents calling the
 __set_name__ method of other descriptors. 
							
						 
						
							2016-11-29 09:56:07 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								9ec07721f4 
								
							 
						 
						
							
							
								
								Issue  #28797 : Modifying the class __dict__ inside the __set_name__ method of  
							
							... 
							
							
							
							a descriptor that is used inside that class no longer prevents calling the
 __set_name__ method of other descriptors. 
							
						 
						
							2016-11-29 09:54:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								ed6de7345e 
								
							 
						 
						
							
							
								
								Merge 3.6  
							
							
							
						 
						
							2016-11-24 22:33:49 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								f7d199ff32 
								
							 
						 
						
							
							
								
								Fix _PyGen_yf()  
							
							... 
							
							
							
							Issue #28782 : Fix a bug in the implementation ``yield from`` when checking
if the next instruction is YIELD_FROM. Regression introduced by WORDCODE
(issue #26647 ).
Reviewed by Serhiy Storchaka and Yury Selivanov. 
							
						 
						
							2016-11-24 22:33:01 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								99250d5c63 
								
							 
						 
						
							
							
								
								Issue  #28774 : Simplified encoding a str result of an error handler in ASCII  
							
							... 
							
							
							
							and Latin1 encoders. 
							
						 
						
							2016-11-23 15:13:00 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Xiang Zhang 
								
							 
						 
						
							
							
							
							
								
							
							
								d04d8474df 
								
							 
						 
						
							
							
								
								Issue  #28774 : Fix start/end pos in unicode_encode_ucs1().  
							
							... 
							
							
							
							Fix error position of the unicode error in ASCII and Latin1
encoders when a string returned by the error handler contains multiple
non-encodable characters (non-ASCII for the ASCII codec, characters out
of the U+0000-U+00FF range for Latin1). 
							
						 
						
							2016-11-23 19:34:01 +08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									INADA Naoki 
								
							 
						 
						
							
							
							
							
								
							
							
								2c5a830f2a 
								
							 
						 
						
							
							
								
								Issue  #28731 : Optimize _PyDict_NewPresized() to create correct size dict.  
							
							... 
							
							
							
							Improve speed of dict literal with constant keys up to 30%. 
							
						 
						
							2016-12-07 18:34:44 +09:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								007d7ff73f 
								
							 
						 
						
							
							
								
								Issue  #28761 : The fields name and doc of structures PyMemberDef, PyGetSetDef,  
							
							... 
							
							
							
							PyStructSequence_Field, PyStructSequence_Desc, and wrapperbase are now of
type "const char *" rather of "char *". 
							
						 
						
							2016-11-22 07:58:08 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									INADA Naoki 
								
							 
						 
						
							
							
							
							
								
							
							
								92c50eee52 
								
							 
						 
						
							
							
								
								Issue  #28731 : Optimize _PyDict_NewPresized() to create correct size dict  
							
							... 
							
							
							
							Improve speed of dict literal with constant keys up to 30%. 
							
						 
						
							2016-11-22 00:57:02 +09:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								50911476f5 
								
							 
						 
						
							
							
								
								Issue  #28760 : Clean up and fix comments in PyUnicode_AsUnicodeEscapeString().  
							
							... 
							
							
							
							Patch by Xiang Zhang. 
							
						 
						
							2016-11-21 11:47:16 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								ac0720eaa4 
								
							 
						 
						
							
							
								
								Issue  #28760 : Clean up and fix comments in PyUnicode_AsUnicodeEscapeString().  
							
							... 
							
							
							
							Patch by Xiang Zhang. 
							
						 
						
							2016-11-21 11:46:51 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								b57d9eac41 
								
							 
						 
						
							
							
								
								Issue  #28748 : Private variable _Py_PackageContext is now of type "const char *"  
							
							... 
							
							
							
							rather of "char *". 
							
						 
						
							2016-11-21 10:25:54 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								460bd0d284 
								
							 
						 
						
							
							
								
								Issue  #19569 : Compiler warnings are now emitted if use most of deprecated  
							
							... 
							
							
							
							functions. 
							
						 
						
							2016-11-20 12:16:46 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								85b0f5beb1 
								
							 
						 
						
							
							
								
								Added the const qualifier to char* variables that refer to readonly internal  
							
							... 
							
							
							
							UTF-8 represenatation of Unicode objects. 
							
						 
						
							2016-11-20 10:16:47 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								a98c4a984b 
								
							 
						 
						
							
							
								
								Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize  
							
							... 
							
							
							
							with PyUnicode_AsUTF8 and PyUnicode_AsUTF8AndSize. 
							
						 
						
							2016-11-20 09:13:40 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								06515833fe 
								
							 
						 
						
							
							
								
								Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize  
							
							... 
							
							
							
							with PyUnicode_AsUTF8 and PyUnicode_AsUTF8AndSize. 
							
						 
						
							2016-11-20 09:13:07 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								bb2356500c 
								
							 
						 
						
							
							
								
								Merge 3.6 (issue  #28721 )  
							
							
							
						 
						
							2016-11-16 18:16:32 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								41782e4970 
								
							 
						 
						
							
							
								
								Issue  #28721 : Fix asynchronous generators aclose() and athrow()  
							
							
							
						 
						
							2016-11-16 18:16:17 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								27b74244fb 
								
							 
						 
						
							
							
								
								Issue  #28701 : _PyUnicode_EqualToASCIIId and _PyUnicode_EqualToASCIIString now  
							
							... 
							
							
							
							require ASCII right argument and assert this condition in debug build. 
							
						 
						
							2016-11-16 20:03:03 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								a83a6a3275 
								
							 
						 
						
							
							
								
								Issue  #28701 : _PyUnicode_EqualToASCIIId and _PyUnicode_EqualToASCIIString now  
							
							... 
							
							
							
							require ASCII right argument and assert this condition in debug build. 
							
						 
						
							2016-11-16 20:02:44 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								e6d6131f78 
								
							 
						 
						
							
							
								
								Fixed an off-by-one error in _PyUnicode_EqualToASCIIString (issue  #28701 ).  
							
							
							
						 
						
							2016-11-16 16:13:13 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								df66b9c425 
								
							 
						 
						
							
							
								
								Fixed an off-by-one error in _PyUnicode_EqualToASCIIString (issue  #28701 ).  
							
							
							
						 
						
							2016-11-16 16:12:56 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								292dd1b2ad 
								
							 
						 
						
							
							
								
								Fixed an off-by-one error in _PyUnicode_EqualToASCIIString (issue  #28701 ).  
							
							
							
						 
						
							2016-11-16 16:12:34 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								503db266a5 
								
							 
						 
						
							
							
								
								Issue  #21449 : Removed private function _PyUnicode_CompareWithId.  
							
							
							
						 
						
							2016-11-16 15:56:50 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								dddec81b2d 
								
							 
						 
						
							
							
								
								Issue  #21449 : Removed private function _PyUnicode_CompareWithId.  
							
							
							
						 
						
							2016-11-16 15:56:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								29a5447360 
								
							 
						 
						
							
							
								
								Issue  #28701 : Replace _PyUnicode_CompareWithId with _PyUnicode_EqualToASCIIId.  
							
							... 
							
							
							
							The latter function is more readable, faster and doesn't raise exceptions.
Based on patch by Xiang Zhang. 
							
						 
						
							2016-11-16 15:41:31 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								fab6acd9f5 
								
							 
						 
						
							
							
								
								Issue  #28701 : Replace _PyUnicode_CompareWithId with _PyUnicode_EqualToASCIIId.  
							
							... 
							
							
							
							The latter function is more readable, faster and doesn't raise exceptions.
Based on patch by Xiang Zhang. 
							
						 
						
							2016-11-16 15:41:11 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								f5894dd646 
								
							 
						 
						
							
							
								
								Issue  #28701 : Replace _PyUnicode_CompareWithId with _PyUnicode_EqualToASCIIId.  
							
							... 
							
							
							
							The latter function is more readable, faster and doesn't raise exceptions.
Based on patch by Xiang Zhang. 
							
						 
						
							2016-11-16 15:40:39 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								1a73bf365e 
								
							 
						 
						
							
							
								
								Issue  #28701 : Replace PyUnicode_CompareWithASCIIString with _PyUnicode_EqualToASCIIString.  
							
							... 
							
							
							
							The latter function is more readable, faster and doesn't raise exceptions. 
							
						 
						
							2016-11-16 10:19:57 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								3b73ea1278 
								
							 
						 
						
							
							
								
								Issue  #28701 : Replace PyUnicode_CompareWithASCIIString with _PyUnicode_EqualToASCIIString.  
							
							... 
							
							
							
							The latter function is more readable, faster and doesn't raise exceptions. 
							
						 
						
							2016-11-16 10:19:20 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								f4934ea77d 
								
							 
						 
						
							
							
								
								Issue  #28701 : Replace PyUnicode_CompareWithASCIIString with _PyUnicode_EqualToASCIIString.  
							
							... 
							
							
							
							The latter function is more readable, faster and doesn't raise exceptions. 
							
						 
						
							2016-11-16 10:17:58 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								c7a8f67411 
								
							 
						 
						
							
							
								
								Issue  #28618 : Mark dict lookup functions as hot  
							
							... 
							
							
							
							It's common to see these functions in the top 3 of "perf report". 
							
						 
						
							2016-11-15 15:13:40 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								616034eb73 
								
							 
						 
						
							
							
								
								Issue  #28648 : Fixed crash in Py_DecodeLocale() in debug build on Mac OS X  
							
							... 
							
							
							
							when decode astral characters. 
							
						 
						
							2016-11-12 14:37:11 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								babe4f8e5e 
								
							 
						 
						
							
							
								
								Issue  #28648 : Fixed crash in Py_DecodeLocale() in debug build on Mac OS X  
							
							... 
							
							
							
							when decode astral characters. 
							
						 
						
							2016-11-12 14:36:02 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								6b4b6e956e 
								
							 
						 
						
							
							
								
								Issue  #28648 : Fixed crash in Py_DecodeLocale() in debug build on Mac OS X  
							
							... 
							
							
							
							when decode astral characters. 
							
						 
						
							2016-11-12 14:35:46 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								84293aff9f 
								
							 
						 
						
							
							
								
								Issue  #28648 : Fixed crash in Py_DecodeLocale() in debug build on Mac OS X  
							
							... 
							
							
							
							when decode astral characters. 
							
						 
						
							2016-11-12 14:29:48 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								b626643734 
								
							 
						 
						
							
							
								
								Issue  #28648 : Fixed crash in Py_DecodeLocale() in debug build on Mac OS X  
							
							... 
							
							
							
							when decode astral characters. 
							
						 
						
							2016-11-12 14:28:06 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								c6944e7edc 
								
							 
						 
						
							
							
								
								Issue  #28618 : Make hot functions using __attribute__((hot))  
							
							... 
							
							
							
							When Python is not compiled with PGO, the performance of Python on call_simple
and call_method microbenchmarks depend highly on the code placement. In the
worst case, the performance slowdown can be up to 70%.
The GCC __attribute__((hot)) attribute helps to keep hot code close to reduce
the risk of such major slowdown. This attribute is ignored when Python is
compiled with PGO.
The following functions are considered as hot according to statistics collected
by perf record/perf report:
* _PyEval_EvalFrameDefault()
* call_function()
* _PyFunction_FastCall()
* PyFrame_New()
* frame_dealloc()
* PyErr_Occurred() 
							
						 
						
							2016-11-11 02:13:35 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								0cae609847 
								
							 
						 
						
							
							
								
								Use PyThreadState_GET() in performance critical code  
							
							... 
							
							
							
							It seems like _PyThreadState_UncheckedGet() is not inlined as expected, even
when using gcc -O3. 
							
						 
						
							2016-11-11 01:43:56 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								f787c90764 
								
							 
						 
						
							
							
								
								Merge 3.6 (issue  #27942 )  
							
							
							
						 
						
							2016-11-09 09:43:37 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								6c10650617 
								
							 
						 
						
							
							
								
								Merge 3.5 (issue  #27942 )  
							
							
							
						 
						
							2016-11-09 09:43:08 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								d2fd3599ab 
								
							 
						 
						
							
							
								
								ssue  #27942 : Fix memory leak in codeobject.c  
							
							
							
						 
						
							2016-11-09 09:42:14 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								9a2ffbd47c 
								
							 
						 
						
							
							
								
								Merge 3.6 (issue  #28003 )  
							
							
							
						 
						
							2016-11-08 19:46:41 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								29310c47a7 
								
							 
						 
						
							
							
								
								Issue  #28003 : Make WrappedVal, ASend and AThrow GC types  
							
							
							
						 
						
							2016-11-08 19:46:22 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								ff0273fb20 
								
							 
						 
						
							
							
								
								Merge 3.6  
							
							
							
						 
						
							2016-11-08 19:20:08 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								49ffdf6bb2 
								
							 
						 
						
							
							
								
								Merge 3.5  
							
							
							
						 
						
							2016-11-08 19:19:52 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								33499b7eed 
								
							 
						 
						
							
							
								
								genobject: Remove unnecessary tp_free slots from aiter_wrapper and coro_wrapper  
							
							
							
						 
						
							2016-11-08 19:19:28 -05:00