Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Prepare to release 0.4.50.4.5 | Alexey Borzenkov | 2014-10-18 | 3 | -2/+9 |
| | |||||
* | Nothing special needed when using VC++ for Python and setuptools | Alexey Borzenkov | 2014-10-18 | 2 | -7/+1 |
| | |||||
* | Attempt to plug threaded leak tests instability some more | Alexey Borzenkov | 2014-10-14 | 1 | -2/+5 |
| | |||||
* | Add Robie Basak to AUTHORS | Alexey Borzenkov | 2014-10-14 | 1 | -0/+1 |
| | |||||
* | Merge pull request #65 from basak/unoptimize-return-value | Alexey Borzenkov | 2014-10-14 | 1 | -2/+3 |
|\ | | | | | arm32: force return value from asm | ||||
| * | arm32: force return value from asm | Robie Basak | 2014-10-14 | 1 | -2/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In my case, instead of a simple "mov r0, #0", the optimizer had done this: Between calls to slp_save_state and slp_restore_state, it saved the value now guaranteed to be 0 using "str r0, [r7]". Now, at the end, it restores that value into r0 using "ldr r3, [r7]" and then "mov r0, r3". It isn't clear to me that intermediate values managed by the compiler, like this one at [r7], would be preserved in the stack this way, especially as at this point we're in a "different" stack (unknown to the optimizer). Instead, prevent the optimizer from re-using a previous result like this by forcing it to rely on the inline assembly to produce the result. This fixes test failures on Ubuntu Utopic using gcc 4.9.1 (-5ubuntu1). I think even this is still a hack though, and not guaranteed to work. Ultimately, gcc can even re-order the "__asm__ volatile" functions at will around the entire function, or just wrap each REGS_TO_SAVE clobbering call with a simple push/pop, thus not preserving the registers between stack switches. The only way I can see of doing this without relying on undefined compiler behaviour is to write the entire slp_switch function in assembly for each architecture, instead of inlining it into a C function for code reuse. | ||||
* | | Merge pull request #64 from basak/always-use-frame-pointer | Alexey Borzenkov | 2014-10-14 | 1 | -0/+3 |
|\ \ | |/ |/| | arm32: make sure gcc uses a frame pointer | ||||
| * | arm32: make sure gcc uses a frame pointer | Robie Basak | 2014-10-14 | 1 | -0/+3 |
|/ | | | | | | | | | | This code assumes that there is a frame pointer. When gcc doesn't use a frame pointer here and __thumb__ is defined, then the code clobbers r7 without declaring it to the compiler. If the compiler uses r7 for something else, then this causes arbitrary failures, depending on what the optimizer did. To work around this, tell gcc to always use a frame pointer. | ||||
* | Move garbage closer to loop, so it doesn't jump generations | Alexey Borzenkov | 2014-09-25 | 1 | -1/+1 |
| | |||||
* | Catch unit-test errors in run-tests.py | Alexey Borzenkov | 2014-09-25 | 1 | -1/+2 |
| | |||||
* | Remove unnecessary STATE_OK in green_new | Alexey Borzenkov | 2014-09-25 | 1 | -5/+1 |
| | |||||
* | Fix compatibility with Python 3.x | Alexey Borzenkov | 2014-09-25 | 1 | -1/+1 |
| | |||||
* | Add a test for implicit parent with threads | Alexey Borzenkov | 2014-09-25 | 1 | -0/+55 |
| | |||||
* | Disable unstable leak tests on Python 2.6 | Alexey Borzenkov | 2014-09-21 | 1 | -1/+2 |
| | |||||
* | Add Matt Madison to AUTHORS | Alexey Borzenkov | 2014-09-21 | 1 | -0/+1 |
| | |||||
* | Merge pull request #61 from madisongh/master | Alexey Borzenkov | 2014-09-21 | 1 | -0/+2 |
|\ | | | | | Add comment noting the MIPS64 gp register save change | ||||
| * | Add comment noting the MIPS64 gp register save change to | Matt Madison | 2014-09-20 | 1 | -0/+2 |
|/ | | | | platform_mips_unix.h. | ||||
* | Merge pull request #58 from madisongh/master | Alexey Borzenkov | 2014-09-21 | 1 | -5/+9 |
|\ | | | | | Re-code the saving of the gp register for MIPS64 so it compiles | ||||
| * | Add back in the explicit save/restore, in case there is a | Matt Madison | 2014-09-20 | 1 | -0/+9 |
| | | | | | | | | | | | | situation where the compiler does not automatically save it for us. Eliminate the special handling for N32 ABI, as registers are still 64 bits in that case. | ||||
| * | Clean up stray extra include from prior versions. | Matt Madison | 2014-09-20 | 1 | -1/+0 |
| | | |||||
| * | Simply remove the additional GP register saves for MIPS64, as | Matt Madison | 2014-09-20 | 1 | -13/+0 |
| | | | | | | | | they appear to be unnecessary. | ||||
| * | Use assembler directives to perform the gp register save/restore. | Matt Madison | 2014-09-19 | 1 | -6/+13 |
| | | |||||
| * | Re-code the saving of the gp register for MIPS64 so it compiles under | Matt Madison | 2014-09-18 | 1 | -5/+7 |
| | | | | | | | | recent versions of gcc. | ||||
* | | Cosmetic change for the error line | Alexey Borzenkov | 2014-09-21 | 1 | -2/+1 |
| | | | | | | | | | | | | Some simple editors don't parse that multiline string correctly, very annoying when half the file has incorrect syntax highlighting. | ||||
* | | Use STATE_OK in green_new in case tp_new causes gc | Alexey Borzenkov | 2014-09-20 | 1 | -0/+4 |
| | | | | | | | | | | | | | | Since gc might cause a thread switch which might use greenlets, which would leave incorrect ts_current, and then incorrect default parent for the allocated greenlet. | ||||
* | | Fix incorrect uses of PyGreenlet_GetCurrent() in tests | Alexey Borzenkov | 2014-09-20 | 1 | -2/+14 |
| | | |||||
* | | Fix a memory leak in PyGreenlet_New | Alexey Borzenkov | 2014-09-20 | 1 | -3/+12 |
| | | |||||
* | | Add missing bdist_egg in make-win-release | Alexey Borzenkov | 2014-09-20 | 1 | -1/+1 |
| | | |||||
* | | Update greenlet.txt | BoonsNaibot | 2014-09-20 | 1 | -1/+1 |
|/ | |||||
* | Better support for Windows x64 builds with VS Express0.4.4 | Alexey Borzenkov | 2014-09-08 | 5 | -10/+30 |
| | |||||
* | PyGreenlet_SetParent: fix return type in greenlet.h | Alexey Borzenkov | 2014-08-23 | 1 | -1/+1 |
| | |||||
* | Merge pull request #56 from BoonsNaibot/patch-2 | Alexey Borzenkov | 2014-08-23 | 1 | -1/+1 |
|\ | | | | | `PyGreenlet_SetParent` returns `int` | ||||
| * | `PyGreenlet_SetParent` returns `int` | BoonsNaibot | 2014-08-22 | 1 | -1/+1 |
|/ | |||||
* | Add Python 3.3 and 3.4 to classifiers | Alexey Borzenkov | 2014-08-08 | 1 | -0/+2 |
| | |||||
* | Increment version to 0.4.30.4.3 | Alexey Borzenkov | 2014-08-07 | 2 | -2/+2 |
| | |||||
* | Add documentation for switch tracing | Alexey Borzenkov | 2014-08-07 | 2 | -0/+39 |
| | |||||
* | Add NEWS for upcoming greenlet 0.4.3 | Alexey Borzenkov | 2014-08-07 | 1 | -0/+10 |
| | |||||
* | Merge pull request #53 from BoonsNaibot/patch-1 | Alexey Borzenkov | 2014-07-25 | 1 | -1/+1 |
|\ | | | | | Fixed return type of `PyGreenlet_Switch`. | ||||
| * | Fixed return type of `PyGreenlet_Switch`. | BoonsNaibot | 2014-07-25 | 1 | -1/+1 |
|/ | |||||
* | Add Dirk Mueller to AUTHORS | Alexey Borzenkov | 2014-06-26 | 1 | -0/+1 |
| | | | | PR #32 (PyVarObject_HEAD_INIT) | ||||
* | Add support for custom build directory for tests | Alexey Borzenkov | 2014-06-25 | 2 | -6/+11 |
| | |||||
* | Don't symlink libraries unless inplace build is requested | Alexey Borzenkov | 2014-06-25 | 4 | -6/+26 |
| | |||||
* | Restore accidentally removed use of my_build_ext | Alexey Borzenkov | 2014-06-25 | 1 | -0/+2 |
| | |||||
* | Call PyBaseObject_Type.tp_new instead of tp_alloc | Alexey Borzenkov | 2014-06-25 | 2 | -1/+38 |
| | | | | | This allows object.__new__ to check greenlet subclasses for being abstract and raise an exception in that case. | ||||
* | Enable support for SunStudio on 32-bit SunOS | Alexey Borzenkov | 2014-06-25 | 1 | -0/+2 |
| | |||||
* | Fix invalid aarch64 constraint | Alexey Borzenkov | 2014-06-24 | 1 | -1/+1 |
| | | | | | | There doesn't seem to be a way to specify x0 as the result, so use "=r" to let compiler choose an appropriate register. It would likely choose x0 anyway. | ||||
* | Run gc.collect() twice in threaded leak tests | Alexey Borzenkov | 2014-06-24 | 1 | -0/+4 |
| | |||||
* | Get rid of -fno-tree-dominator-opts | Alexey Borzenkov | 2014-06-24 | 4 | -57/+8 |
| | | | | | | This option is deprecated and removed, so we cannot rely on it. Additionally, don't rely on `fancy_return_zero' and use inline assembly to generate a proper zero return value instead. | ||||
* | Define and use PyVarObject_HEAD_INIT compatibility macro | Alexey Borzenkov | 2014-06-24 | 1 | -5/+4 |
| | | | | Based on pull request #32 | ||||
* | Change maintainer | Alexey Borzenkov | 2014-06-24 | 1 | -2/+2 |
| |