Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								950361c6ca 
								
							 
						 
						
							
							
								
								Patches for (two forms of) optional dynamic execution profiling --  
							
							... 
							
							
							
							i.e., counting opcode frequencies, or (with DXPAIRS defined) opcode
pair frequencies.  Define DYNAMIC_EXECUTION_PROFILE on the command
line (for this file and for sysmodule.c) to enable. 
							
						 
						
							1997-01-24 13:49:28 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								8c5df06ec7 
								
							 
						 
						
							
							
								
								Change the control flow for error handling in the function prelude to  
							
							... 
							
							
							
							jump to the "Kill locals" section at the end.  Add #ifdef macintosh
bandaid to make sure we call sigcheck() on the Mac. 
							
						 
						
							1997-01-24 04:19:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								43f1b8d6e4 
								
							 
						 
						
							
							
								
								Added optional interface for dynamic execution profile (to be gathered  
							
							... 
							
							
							
							in ceval.c). 
							
						 
						
							1997-01-24 04:07:45 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								b3f515af64 
								
							 
						 
						
							
							
								
								Get the line number from PyCode_Addr2Line instead of believing  
							
							... 
							
							
							
							tb_lineno.  Store it in tb_lineno for the user. 
							
						 
						
							1997-01-24 04:02:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								99d182550b 
								
							 
						 
						
							
							
								
								New magin number (because of linenumber table).  
							
							
							
						 
						
							1997-01-24 03:44:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								d031c89891 
								
							 
						 
						
							
							
								
								Marshal the line number table of code objects.  
							
							
							
						 
						
							1997-01-24 03:44:17 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								da4eb5c3b5 
								
							 
						 
						
							
							
								
								Instead of emitting SET_LINENO instructions, generate a line number  
							
							... 
							
							
							
							table which is incorporated in the code object.  This way, the runtime
overhead to keep track of line numbers is only incurred when an
exception has to be reported. 
							
						 
						
							1997-01-24 03:43:35 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								a4240132ec 
								
							 
						 
						
							
							
								
								Kill all local variables on function return.  This closes a gigantic  
							
							... 
							
							
							
							leak of memory and file descriptors (thanks for Roj for reporting
that!).  Alas, the speed goes down by 5%. :-( 
							
						 
						
							1997-01-21 21:18:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								70d44787a3 
								
							 
						 
						
							
							
								
								Only call sigcheck() at the ticker code if we don't have true signals.  
							
							... 
							
							
							
							This is safe now that both intrcheck() and signalmodule.c schedule a
sigcheck() call via Py_AddPendingCall().
This gives another 7% speedup (never run such a test twice ;-). 
							
						 
						
							1997-01-21 06:15:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								1aa14838d2 
								
							 
						 
						
							
							
								
								Cleanup:  
							
							... 
							
							
							
							- fix bug in Py_MakePendingCalls() with threading
- fix return type of do_raise
- remove build_slice (same as PySlice_New)
- remove code inside #if 0
- remove code inside #ifdef CHECK_STACK
- remove code inside #ifdef SUPPORT_OBSOLETE_ACCESS
- comment about newimp.py should refer to ni.py 
							
						 
						
							1997-01-21 05:34:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								554fa49500 
								
							 
						 
						
							
							
								
								get build info from elsewhere  
							
							
							
						 
						
							1997-01-20 18:34:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								768360243a 
								
							 
						 
						
							
							
								
								Changes for frame object speedup:  
							
							... 
							
							
							
							- get fastlocals differently
- call newframeobject() with fewer arguments
- toss getowner(), which was unused anyway 
							
						 
						
							1997-01-20 04:26:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								7eb883a18e 
								
							 
						 
						
							
							
								
								Remove unused variable.  
							
							
							
						 
						
							1997-01-18 20:04:05 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								8d75161671 
								
							 
						 
						
							
							
								
								Intern the string "__complex__".  
							
							
							
						 
						
							1997-01-18 08:04:16 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								7b89b6a660 
								
							 
						 
						
							
							
								
								Intern all names and varnames in newcodeobject(), plus those string  
							
							... 
							
							
							
							literals that look like identifiers.  Also intern all strings used as
names during the compilation. 
							
						 
						
							1997-01-18 08:02:57 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								3dfd53b4c8 
								
							 
						 
						
							
							
								
								Add "if (x != NULL) continue;" (or similar for err==0) before the  
							
							... 
							
							
							
							break to most cases, as suggested by Tim Peters.  This gives another
8-10% speedup. 
							
						 
						
							1997-01-18 02:46:13 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								98a9b312e8 
								
							 
						 
						
							
							
								
								Marshal the new stacksize item in code objects.  
							
							
							
						 
						
							1997-01-17 21:07:08 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								7af8130857 
								
							 
						 
						
							
							
								
								Working semaphore implementation by Sjoerd.  
							
							
							
						 
						
							1997-01-17 21:06:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								dd5db43905 
								
							 
						 
						
							
							
								
								New MAGIC number (code objects have one more item when marshalled).  
							
							
							
						 
						
							1997-01-17 21:06:11 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								62f7d15d0b 
								
							 
						 
						
							
							
								
								Use the stack size from the code object and the CO_MAXBLOCKS constant  
							
							... 
							
							
							
							from compile.h.  Remove all eval stack overflow checks. 
							
						 
						
							1997-01-17 21:05:28 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								8b993a98db 
								
							 
						 
						
							
							
								
								Add co_stacksize field to codeobject structure, and stacksize argument  
							
							... 
							
							
							
							to PyCode_New() argument list.  Move MAXBLOCKS constant to conpile.h.
Added accurate calculation of the actual stack size needed by the
generated code.
Also commented out all fprintf statements (except for a new one to
diagnose stack underflow, and one in #ifdef'ed out code), and added
some new TO DO suggestions (now that the stacksize is taken of the TO
DO list). 
							
						 
						
							1997-01-17 21:04:03 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								635abd24f0 
								
							 
						 
						
							
							
								
								Check for duplicate keyword arguments at compile time.  
							
							
							
						 
						
							1997-01-06 22:56:52 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								8f49e12a0e 
								
							 
						 
						
							
							
								
								Make builtin_module_names a tuple instead of a list.  
							
							
							
						 
						
							1997-01-06 22:55:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								408027ea46 
								
							 
						 
						
							
							
								
								Rename DEBUG macro to Py_DEBUG  
							
							
							
						 
						
							1996-12-30 16:17:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								0aa9ee65ab 
								
							 
						 
						
							
							
								
								Moved the raise logic out of the main interpreter loop to a separate function.  
							
							... 
							
							
							
							The raise logic has one additional feature: if you raise <class>,
<value> where <value> is not an instance, it will construct an
instance using <value> as argument.  If <value> is None, <class> is
instantiated without arguments.  If <value> is a tuple, it is used as
the argument list.
This feature is intended to make it easier to upgrade code from using
string exceptions to using class exceptions; without this feature,
you'd have to change every raise statement from ``raise X'' to ``raise
X()'' and from ``raise X, y'' to ``raise X(y)''.  The latter is still
the recommended form (because it has no ambiguities about the number
of arguments), but this change makes the transition less painful. 
							
						 
						
							1996-12-10 18:07:35 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								c1547d930f 
								
							 
						 
						
							
							
								
								Better way to handle 64-bit ints, keeping gcc -Wall happy.  
							
							... 
							
							
							
							Tested with AMK's help. 
							
						 
						
							1996-12-10 15:39:04 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								1a2c5cbcc4 
								
							 
						 
						
							
							
								
								Add unistd.h to make gcc -Wall happy.  
							
							
							
						 
						
							1996-12-10 15:37:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								067998f35e 
								
							 
						 
						
							
							
								
								Add const to error and newstring functions  
							
							
							
						 
						
							1996-12-10 15:33:34 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								80bb9655f0 
								
							 
						 
						
							
							
								
								Keep gcc -Wall happy.  
							
							
							
						 
						
							1996-12-05 23:27:02 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								ed0af8fe70 
								
							 
						 
						
							
							
								
								Support __complex__ method on instances, for complex() conversion.  
							
							... 
							
							
							
							Keep gcc -Wall happy. 
							
						 
						
							1996-12-05 23:18:18 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								150b2df682 
								
							 
						 
						
							
							
								
								Change the Don Beaudry hack into the Don B + Jim F hack; now, if *any*  
							
							... 
							
							
							
							base class is special it gets invoked.
Make gcc -Wall happy. 
							
						 
						
							1996-12-05 23:17:11 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								3afb5959aa 
								
							 
						 
						
							
							
								
								Some extra flags that an HPUX user wants me to add.  
							
							
							
						 
						
							1996-12-05 23:15:35 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								b0c168cbe8 
								
							 
						 
						
							
							
								
								Tentative changes to make this work better on 64-bit machines.  
							
							... 
							
							
							
							A plain int that doesn't fit in 32 bits will be marshalled using a new
type.  32 bits machines can't handle this and will issue a warning. 
							
						 
						
							1996-12-05 23:15:02 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								d266eb460e 
								
							 
						 
						
							
							
								
								New permission notice, includes CNRI.  
							
							
							
						 
						
							1996-10-25 14:44:06 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								b75fba04c7 
								
							 
						 
						
							
							
								
								Forget about Ellipses b/w compatibility.  
							
							
							
						 
						
							1996-10-16 04:18:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								e449af7da9 
								
							 
						 
						
							
							
								
								Ellipses -> Ellipsis rename (the dictionary really says that it should  
							
							... 
							
							
							
							be Ellipsis!).
Bumped the API version because a linker-visible symbol is affected.
Old C code will still compile -- there's a b/w compat macro.
Similarly, old Python code will still run, builtin exports both
Ellipses and Ellipsis. 
							
						 
						
							1996-10-11 16:25:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								cf1474b73a 
								
							 
						 
						
							
							
								
								Sjoerd's thread changes (including down_sema typo fix).  
							
							... 
							
							
							
							Note: waitflag not supported on NT. 
							
						 
						
							1996-10-08 14:17:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								452a9833c9 
								
							 
						 
						
							
							
								
								Added line number to most compile-time error messages.  
							
							
							
						 
						
							1996-09-17 14:32:04 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								9b38a145e2 
								
							 
						 
						
							
							
								
								Rationalized MS ifdefs  
							
							
							
						 
						
							1996-09-11 23:12:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								cc88341e6d 
								
							 
						 
						
							
							
								
								Changes to setpythonpath():  
							
							... 
							
							
							
							Test for / as well as for SEP for MS filenames.
Drop trailing separator from sys.path[0] for MS and Unix filenames. 
							
						 
						
							1996-09-10 14:44:21 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								b072150d7f 
								
							 
						 
						
							
							
								
								Stupid bug: complex(x,y) would yield x+xj  
							
							
							
						 
						
							1996-09-07 15:55:27 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								57b1822459 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							
							
						 
						
							1996-08-29 18:10:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								927f6e68fb 
								
							 
						 
						
							
							
								
								Needed more includes...  
							
							
							
						 
						
							1996-08-29 18:10:30 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								bae29713ec 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							
							
						 
						
							1996-08-29 17:48:26 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								6eea32622c 
								
							 
						 
						
							
							
								
								typo (#indef -> #undef)  
							
							
							
						 
						
							1996-08-26 14:58:54 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								d8a6d1c2e7 
								
							 
						 
						
							
							
								
								Afterthough: leave both leading underscores in,  
							
							... 
							
							
							
							so __spam becomes _ClassName__spam. 
							
						 
						
							1996-08-24 07:54:27 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								fe2236f3c8 
								
							 
						 
						
							
							
								
								Oops need to mangle global statement separately  
							
							
							
						 
						
							1996-08-24 07:29:04 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								8ff077b094 
								
							 
						 
						
							
							
								
								Name mangling, what the heck!  
							
							
							
						 
						
							1996-08-24 06:21:31 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								8b9ea873ad 
								
							 
						 
						
							
							
								
								Use MS_DLL_ID as sys.winver  
							
							
							
						 
						
							1996-08-23 18:14:47 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								ac279109d4 
								
							 
						 
						
							
							
								
								PYTHONWIN -> MS_COREDLL  
							
							
							
						 
						
							1996-08-22 23:10:58 +00:00