summaryrefslogtreecommitdiffstats
path: root/Python
Commit message (Collapse)AuthorAgeFilesLines
* forward-port 1.17.12.1Anthony Baxter2004-05-131-1/+1
|
* Some (but not all) of the why code bitfield tests ran faster asRaymond Hettinger2004-04-111-3/+4
| | | | separate equality tests. Now, all are set to their best timing.
* Revert 2.393, elimination of pre-decrementing, whichRaymond Hettinger2004-04-101-17/+13
| | | | did not stand-up to additional timings.
* Use continue instead of break whereever possible.Raymond Hettinger2004-04-071-2/+8
|
* * Improve readability and remove data dependencies by convertingRaymond Hettinger2004-04-071-14/+18
| | | | | | | | pre-increment forms to post-increment forms. Post-incrementing also eliminates the need for negative array indices for oparg fetches. * In exception handling code, check for class based exceptions before the older string based exceptions.
* Small code improvements for readability, code size, and/or speed.Raymond Hettinger2004-04-071-58/+54
| | | | | | | | | | | | | | | | | | | | | | | BINARY_SUBSCR: * invert test for normal case fall through * eliminate err handling code by jumping to slow_case LOAD_LOCALS: * invert test for normal case fall through * continue instead of break for the non-error case STORE_NAME and DELETE_NAME: * invert test for normal case fall through LOAD_NAME: * continue instead of break for the non-error case DELETE_FAST: * invert test for normal case fall through LOAD_DEREF: * invert test for normal case fall through * continue instead of break for the non-error case
* Simplify previous checkin (bitfields for WHY codes).Raymond Hettinger2004-04-061-12/+14
| | | | Restores the self-documenting enum declaration.
* Coded WHY flags as bitfields (taking inspiration from tp_flags).Raymond Hettinger2004-04-061-20/+16
| | | | | This allows multiple flags to be tested in a single compare which eliminates unnecessary compares and saves a few bytes.
* Since the fast_yield branch target was introduced, it appears that mostTim Peters2004-04-051-41/+41
| | | | | | | tests of "why" against WHY_YIELD became useless. This patch removes them, but assert()s that why != WHY_YIELD everywhere such a test was removed. The test suite ran fine under a debug build (i.e., the asserts never triggered).
* Bump the magic number to avoid sharing bytecode between 2.3 and 2.4.Jeremy Hylton2004-04-011-32/+14
| | | | | Revise the long comment that explained details of the magic number in gory detail.
* OS/2 VACPP build updates/fixesAndrew MacIntyre2004-03-291-1/+1
|
* Marshal clean-up (SF patch #873224)Armin Rigo2004-03-262-70/+61
|
* A few more PyThreadState_Get to PyThreadState_GET conversionsNicholas Bastin2004-03-251-1/+1
|
* Changed random calls to PyThreadState_Get() to use the macroNicholas Bastin2004-03-247-25/+25
|
* Enable the profiling of C functions (builtins and extensions)Nicholas Bastin2004-03-242-6/+52
|
* Decref all if ensure_fromlist fails. Fixes #876533.Martin v. Löwis2004-03-231-2/+3
| | | | Backported to 2.3.
* Lost reference.Armin Rigo2004-03-221-6/+8
|
* Fix SF bug #765624.Armin Rigo2004-03-221-5/+12
|
* Fix for line events in the case:Armin Rigo2004-03-221-1/+31
| | | | | | | | def f(a): if a: print 5 else: pass
* Moved tracebackobject to traceback.h, Closes SF Bug #497067Nicholas Bastin2004-03-211-23/+16
|
* Improve byte coding for multiple assignments.Raymond Hettinger2004-03-211-3/+74
| | | | Gives 30% speedup on "a,b=1,2" and 25% on "a,b,c=1,2,3".
* Cancelled checkin, sorry.Armin Rigo2004-03-201-10/+6
|
* A 2% speed improvement with gcc on low-endian machines. My guess is that thisArmin Rigo2004-03-201-6/+10
| | | | | new pattern for NEXTARG() is detected and optimized as a single (*short) loading.
* LIST_APPEND is predicably followed by JUMP_ABSOLUTE.Raymond Hettinger2004-03-121-1/+5
| | | | Reduces loop overhead by an additional 10%.
* Move the code for BREAK and CONTINUE_LOOP to be near FOR_ITER.Raymond Hettinger2004-03-121-9/+9
| | | | | Makes it more likely that all loop operations are in the cache at the same time.
* Speedup for-loops by inlining PyIter_Next(). Saves duplicate testsRaymond Hettinger2004-03-121-8/+10
| | | | | and a function call resulting in a 15% reduction of total loop overhead (as measured by timeit.Timer('pass')).
* Refactor and optimize code for UNPACK_SEQUENCE.Raymond Hettinger2004-03-081-27/+13
| | | | | | | | | | * Defer error handling for wrong number of arguments to the unpack_iterable() function. Cuts the code size almost in half. * Replace function calls to PyList_Size() and PyTuple_Size() with their smaller and faster macro counterparts. * Move the constant structure references outside of the inner loops.
* SF patch #910929: Optimize list comprehensionsRaymond Hettinger2004-03-072-3/+10
| | | | | Add a new opcode, LIST_APPEND, and apply it to the code generation for list comprehensions. Reduces the per-loop overhead by about a third.
* SF Patch #902444: Use process scope thread on FreeBSD. System scopeHye-Shik Chang2004-03-041-1/+1
| | | | | is too expensive on FreeBSD's KSE threading infrastructure and even test_threadedimport fails on default setting.
* typoSkip Montanaro2004-03-031-1/+1
|
* Add pystack definition to Misc/gdbinit with some explanation of its behaviorSkip Montanaro2004-03-011-0/+4
| | | | | and add flag comments to ceval.c and main.c alerting people to the coupling between pystack and the layout of those files.
* This is my patch #876198 plus a NEWS entry and a header frob.Michael W. Hudson2004-02-121-1/+1
| | | | | Remove the ability to use (from C) arbitrary objects supporting the read buffer interface as the co_code member of code objects.
* remove support for missing ANSI C header files (limits.h, stddef.h, etc).Skip Montanaro2004-02-103-21/+0
|
* SF patch #884022: dynamic execution profiling vs opcode predictionRaymond Hettinger2004-02-081-0/+9
| | | | | | | | | (Contributed by Andrew I MacIntyre.) disables opcode prediction when dynamic execution profiling is in effect, so the profiling counters at the top of the main interpreter loop in eval_frame() are updated for each opcode.
* Remove support for systems defining Py_PTHREAD_D[467] inSkip Montanaro2004-02-071-72/+0
| | | | Python/thread_pthread.h.
* SF patch #864059: optimize eval_frameRaymond Hettinger2004-02-061-5/+6
| | | | | | Simplified version of Neal Norwitz's patch which adds gotos for opcodes that set "why". This skips a number of tests where the outcome of the tests are known in advance.
* Fix input() builtin function to respect compiler flags.Hye-Shik Chang2004-02-021-1/+4
| | | | (SF patch 876178, patch by mwh, unittest by perky)
* Remove support for DYNIX, IRIX 4, --with-sgi-dl, --with-dl-dldSkip Montanaro2004-01-171-4/+0
|
* remove DGUX support.Skip Montanaro2004-01-172-14/+2
|
* Apply pre-sizing optimization to a broader class of objects.Raymond Hettinger2004-01-041-8/+4
| | | | | Formerly, the length was only fetched from sequence objects. Now, any object that reports its length can benefit from pre-sizing.
* Apply map/zip pre-sizing optimization to a broader class of objects.Raymond Hettinger2004-01-041-11/+7
| | | | | Formerly, the length was only fetched from sequence objects. Now, any object that reports its length can benefit from pre-sizing.
* Add comment to mollify Tim.Jeremy Hylton2004-01-021-0/+2
|
* Fix gcc 3.3 warnings related to Py_UNICODE_WIDE.Hye-Shik Chang2003-12-291-2/+20
|
* Guido grants a Christmas wish:Raymond Hettinger2003-12-171-0/+45
| | | | sorted() becomes a regular function instead of a classmethod.
* Remove the PendingDeprecationWarning from apply(). apply() willFred Drake2003-12-051-4/+0
| | | | remain deprecated in the documentation.
* Py_Finalize(): disabled the second call of cyclic gc, and added extensiveTim Peters2003-12-011-2/+27
| | | | | | | comments about why both calls to cyclic gc here can cause problems. I'll backport to 2.3 maint. Since the calls were introduced in 2.3, that will be the end of it.
* - Removed FutureWarnings related to hex/oct literals and conversionsGuido van Rossum2003-11-291-13/+1
| | | | | | | | | | and left shifts. (Thanks to Kalle Svensson for SF patch 849227.) This addresses most of the remaining semantic changes promised by PEP 237, except for repr() of a long, which still shows the trailing 'L'. The PEP appears to promise warnings for operations that changed semantics compared to Python 2.3, but this is not implemented; we've suffered through enough warnings related to hex/oct literals and I think it's best to be silent now.
* Getting rid of all the code inside #ifdef macintosh too.Jack Jansen2003-11-206-146/+2
|
* Getting rid of code dependent on GUSI or the MetroWerks compiler.Jack Jansen2003-11-192-12/+0
|
* Getting rid of code conditional on TARGET_API_MAC_*.Jack Jansen2003-11-191-37/+0
|