- 15 Oct, 2015 7 commits
-
-
Kevin Modzelewski authored
Reenable unboxed values
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
- Change INT to a type that remembers whether it was boxed or not. - We still need a way of specifying a plain unboxed int, so add a "phony" UNBOXED_INT. UNBOXED_INT is not usable as a variable type, but can be used to specify argument and return types. It's up to the receiver (irgen or type analysis) to convert UNBOXED_INT to a usable INT. Right now that's only guarded with a number of asserts (and not through, say, the C++ type system).
-
Kevin Modzelewski authored
This will fail even with the current workaround
-
Kevin Modzelewski authored
Add cpythons method cache
-
Kevin Modzelewski authored
Fix a rare 'assert R11 is not used' crash
-
- 14 Oct, 2015 2 commits
-
-
Marius Wachtler authored
-
Marius Wachtler authored
-
- 13 Oct, 2015 3 commits
-
-
Kevin Modzelewski authored
disable moderate opt and pyston passes and increase reopt threshold
-
Kevin Modzelewski authored
Add module "readline" and update CPython test notes.
-
Kevin Modzelewski authored
handle the situation which provide a directory to pyston
-
- 12 Oct, 2015 2 commits
-
-
Marius Wachtler authored
My sym entry llvm stackmap patch contains a bug where it will emit stackmap entries with the wrong offset into the large constants array. The problem is that the code assumes that the symbolic stack map constants are emitted at the end of the constants array, but doen't take into consideration that "normal" large constants can be added after symbolic entries. Thereby making the assigned offsets point to the wrong constants. To fix this issue I'm calculating the offset for symbolic entries now at the very end when we know that the number of constants can't change anymore. A nicer fix would be to not emit the symbolic entries inside the large cosntants array but instead into a special one. But I think this is overkill for now and would like to todo this when the stackmap v2 code landed inside llvm in order to not have to implement it twice.
-
Marius Wachtler authored
-
- 10 Oct, 2015 7 commits
-
-
Boxiang Sun authored
-
Kevin Modzelewski authored
Try to fix "enforce return conventions" perf regression
-
Kevin Modzelewski authored
Misc perf improvements
-
Kevin Modzelewski authored
Pending review: add __call__ attribute to builtin functions and methods
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
We can rewrite a callattr where the getattr was done via a getattro, if we are in CXX mode. This got lost in the "enforce return conventions" PR and resulted in a 4% slowdown on pyxl bench.
-
- 09 Oct, 2015 1 commit
-
-
Boxiang Sun authored
-
- 08 Oct, 2015 3 commits
-
-
Boxiang Sun authored
-
Boxiang Sun authored
-
Marius Wachtler authored
-
- 07 Oct, 2015 6 commits
-
-
Kevin Modzelewski authored
I think it's because the initial allocation of it fails. This only shows up in the debug build of lxml_test, which doesn't get tested through CI.
-
Marius Wachtler authored
-
Marius Wachtler authored
-
Marius Wachtler authored
Add rewrite support for calls which use keyword args
-
Marius Wachtler authored
-
Marius Wachtler authored
-
- 06 Oct, 2015 9 commits
-
-
Kevin Modzelewski authored
Test against an old 0.5-series version of sqlalchemy
-
Kevin Modzelewski authored
Use callattr inside PyObject_CallMethod*
-
Kevin Modzelewski authored
After much investigation, I think this is the best option for now. We might need to patch sqlalchemy or switch to refcounting. The issue is that there's a dangling cursor that's left open, and under cpython it will get closed quickly. But for us, it's left open, which keeps the connection open. This leaves the table its referencing locked. But only in old versions of sqlite! Newer versions are smart enough to know that 'select current_timestamp() from table' does not need to lock the table, so even though that select statement is still running, it doesn't end up locking the table. PyPy has a different issue with the test, where it closes the cursor too early (not sure why).
-
Marius Wachtler authored
-
Marius Wachtler authored
Use travis_wait to workaround the no output received error
-
Marius Wachtler authored
-
Marius Wachtler authored
Add more Rewritable template args to functions
-
Marius Wachtler authored
django_template3.py 2.7s (4) 2.7s (4) -0.3% pyxl_bench.py 2.3s (4) 2.2s (4) -4.1% sqlalchemy_imperative2.py 2.7s (4) 2.6s (4) -1.4% geomean 2.5s 2.5s -2.0%
-
Kevin Modzelewski authored
This exposed some other issues for us.
-