- 29 Mar, 2016 2 commits
-
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
- 28 Mar, 2016 16 commits
-
-
Kevin Modzelewski authored
- change up interpreter-shutdown to better deal with objects with custom finalizers - fix a bunch of mixed decrefs for oldstyle-classes - a couple other misc things file.py is now working
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
I guess a number of tests do this to help with testing
-
Marius Wachtler authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
instead of re-calculating it for every BB profiling ftw
-
Kevin Modzelewski authored
Don't use ValueMap::operator[], since that is much more expensive than lookup().
-
Marius Wachtler authored
-
- 27 Mar, 2016 4 commits
-
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
I think `make check_dbg` is clean again.
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
- 26 Mar, 2016 9 commits
-
-
Kevin Modzelewski authored
Most of these need to return borrowed references in order to match the C API.
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
If we find a type that - we think we can reason about statically - does not have an __iter__ but can be iterated via __getitem__ we previously just bailed saying that we know it doesn't have an __iter__ method (instead of calling getiterHelper like we should). This bug exists on master as well, but we just don't run into it that often (especially since it's llvm-tier-only).
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
With some prefetching.
-
- 25 Mar, 2016 4 commits
-
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
Now that they are only a small number of sizes (powers of two), can use a freelist pretty easily. Especially because most of the allocations will come from places where we can precompute the freelist index. About a 5% improvement on raytrace.py
-
Kevin Modzelewski authored
Our old allocator supported very fast realloc() calls (amortized constant time), and we relied on that by doing "realloc(array, old_size + 1)" every time we wanted to grow the array. Instead, now do "if (power_of_two(old_size)) realloc(array, old_size * 2)" Somehow this is 15% faster overall.
-
Kevin Modzelewski authored
-
- 24 Mar, 2016 5 commits
-
-
Kevin Modzelewski authored
Refcounting added a second way to represent "no attrs" -- NULL as a hcls. This was causing guards to fail since a check would be written for one but then it would fail when objects came in with the other. So canonicalize to using NULL as the "no attributes" hcls.
-
Kevin Modzelewski authored
It can still be helpful to turn them off, but now that the refcounter non-determinism has been fixed I think it's time to have these back on.
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-