- 28 May, 2020 11 commits
-
-
Kirill Smelkov authored
We know from past benchmarks that most of the time is in compile.
-
Kirill Smelkov authored
Don't continue on `if $CC == tcc` -> instead put actions that are not appropriate for `tcc -O2` under `if $CC != tcc`. We will add other actions to that loop - that's the reason. In preparation to add pystone_pyx.pyx
-
Kirill Smelkov authored
Cython is currently slow: name time/op pycompile+pyimport 13.0ms ± 0% pyimport 12.0ms ± 0% cython/py 983ms ± 1%
-
Kirill Smelkov authored
We mesure time, not operations per second.
-
Kirill Smelkov authored
In preparation to add pystone_pyx.pyx
-
Kirill Smelkov authored
In preparation that in addition to pystone.pt there will be also pystone_pyx.pyx with type annotations.
-
Kirill Smelkov authored
pystone can say, e.g. "this machine benchmarks at 1.85343e+06 pystones"
-
Kirill Smelkov authored
It is close to gcc.
-
Kirill Smelkov authored
-
Kirill Smelkov authored
Previously it was failing with master: (neo) (z-dev) (g.env) kirr@deco:~/src/tools/py/cython/t/compilebench$ ./doit.sh /home/kirr/src/tools/py/cython/Cython/Compiler/Main.py:344: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /home/kirr/src/tools/py/cython/t/compilebench/pystone_pyxtest.py tree = Parsing.p_module(s, pxd, full_module_name) Error compiling Cython file: ------------------------------------------------------------ ... TRUE = 1 FALSE = 0 def main(loops=LOOPS): benchtime, stones = pystones(loops) print "Pystone(%s) time for %d passes = %g" % \ ^ ------------------------------------------------------------ pystone_pyxtest.py:62:10: Syntax error in simple statement list
-
Kirill Smelkov authored
* master: (280 commits) Fix compilation in PyPy. Update changelog. Revert "Disable "c_api_binop_methods" directive in 0.29.x and provide it only as an enabled forward option." Disable "c_api_binop_methods" directive in 0.29.x and provide it only as an enabled forward option. Update changelog. Use Py_SET_SIZE() and Py_SET_REFCNT() on Python 3.9.0a4 and newer (GH-3639) Update changelog. Use Py_SET_SIZE() and Py_SET_REFCNT() on Python 3.9.0a4 and newer (GH-3639) Limited API updates and cleanup for #2056. GH-3635) Update changelog. Update changelog. Emit an error when typeid() is used outside of C++ mode (GH-3637) Fix overflow handling for abs() calls on signed integer types (GH-3634) Update changelog. Fix overflow handling for abs() calls on signed integer types (GH-3634) Fix handling of "no-cpp" test tag for error tests, where "cpp" is already removed from the list of test backends. Update changelog. Avoid "uninitialised" warnings for sizeof and typeid (GH-3631) Emit an error when typeid() is used outside of C++ mode (GH-3637) Fix handling of "no-cpp" test tag for error tests, where "cpp" is already removed from the list of test backends. ...
-
- 27 May, 2020 10 commits
-
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
Revert "Disable "c_api_binop_methods" directive in 0.29.x and provide it only as an enabled forward option." This reverts commit 4ac64ddf.
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Victor Stinner authored
* Add __Pyx_SET_SIZE() function: use Py_SET_SIZE() on Python 3.9.0a4 and newer, or use Py_SIZE() as an l-value on older Python versions. Py_SIZE() must not be used as an l-value anymore in Python 3.9: Py_SET_SIZE() must be used instead: * https://bugs.python.org/issue39573 * https://docs.python.org/dev/c-api/structures.html#c.Py_SET_SIZE * Add __Pyx_SET_REFCNT() function: use Py_SET_REFCNT() on Python 3.9.0a4 and newer, or use Py_REFCNT() as an l-value on older Python versions. Py_REFCNT() must not be used as an l-value anymore in Python 3.9: Py_SET_REFCNT() must be used instead: * https://bugs.python.org/issue39573 * https://docs.python.org/dev/c-api/structures.html#c.Py_SET_REFCNT Use it in ModuleNode.generate_usr_dealloc_call(): * Replace ++Py_REFCNT(o) with __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1) * Replace --Py_REFCNT(o) with __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1)
-
Stefan Behnel authored
-
Victor Stinner authored
* Add __Pyx_SET_SIZE() function: use Py_SET_SIZE() on Python 3.9.0a4 and newer, or use Py_SIZE() as an l-value on older Python versions. Py_SIZE() must not be used as an l-value anymore in Python 3.9: Py_SET_SIZE() must be used instead: * https://bugs.python.org/issue39573 * https://docs.python.org/dev/c-api/structures.html#c.Py_SET_SIZE * Add __Pyx_SET_REFCNT() function: use Py_SET_REFCNT() on Python 3.9.0a4 and newer, or use Py_REFCNT() as an l-value on older Python versions. Py_REFCNT() must not be used as an l-value anymore in Python 3.9: Py_SET_REFCNT() must be used instead: * https://bugs.python.org/issue39573 * https://docs.python.org/dev/c-api/structures.html#c.Py_SET_REFCNT Use it in ModuleNode.generate_usr_dealloc_call(): * Replace ++Py_REFCNT(o) with __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1) * Replace --Py_REFCNT(o) with __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1)
-
- 26 May, 2020 16 commits
-
-
Stefan Behnel authored
-
Robert Bradshaw authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Celelibi authored
-
serge-sans-paille authored
Fixes #1911
-
Stefan Behnel authored
-
serge-sans-paille authored
Fixes #1911
-
Stefan Behnel authored
Fix handling of "no-cpp" test tag for error tests, where "cpp" is already removed from the list of test backends.
-
Stefan Behnel authored
-
Celelibi authored
Closes #3575
-
Celelibi authored
-
Stefan Behnel authored
Fix handling of "no-cpp" test tag for error tests, where "cpp" is already removed from the list of test backends.
-
Stefan Behnel authored
-
- 25 May, 2020 3 commits
-
-
Celelibi authored
Closes #3575
-
Stefan Behnel authored
Closes https://github.com/cython/cython/issues/3632
-
-