- 21 Aug, 2016 3 commits
-
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
- 20 Aug, 2016 6 commits
-
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
Instead of having it always point to the thread-local threadstate object, it's a global that gets updated during context switches, like CPython does it. There are still a number of differences that should be refactored out, but I think this should bring us quite a bit closer to CPython's implementation.
-
Kevin Modzelewski authored
It's time :(
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
This new version is causing some issues for us
-
- 19 Aug, 2016 4 commits
-
-
Marius Wachtler authored
switch from the SSE prefetch to __builtin_prefetch
-
Marius Wachtler authored
string interning: make it slightly more space efficient
-
Marius Wachtler authored
-
Marius Wachtler authored
hidden classes: free classes of singleton type
-
- 18 Aug, 2016 1 commit
-
-
Marius Wachtler authored
this fixes the huge (~350MB) leak in: for i in xrange(1000000): class C(object): pass
-
- 17 Aug, 2016 6 commits
-
-
Marius Wachtler authored
We used to store the string content twice. This implementation makes use of DenseSet::find_as functionality where one can search using a different type. I was not sure if the special DenseMapInfo I had to create causes any problems so I choose to create a new source file for it so that it does not get picked up somewhere else.
-
Marius Wachtler authored
free bjit code after LLVM codegen
-
Marius Wachtler authored
we free now the code blocks after a recompile in the LLVM tier (except for OSR frames) because it is likely that we will not use the code anymore. - we have to make sure we are not currently executing any code we will delete that's why I added bjit_num_inside - there were some cases where we forgot to deregister stuff - when profiling we don't actually unmap the code in order to not brake profiling
-
Marius Wachtler authored
EH: correctly deregister EH frames and cleanup the code
-
Marius Wachtler authored
- previously we never deregistered the EH frame from libunwind (which exposed a bug) - I removed the calls to register the EH info with gcc since we have our own unwinder which does not need this - cleaned up the code and fixed some small memory leaks
-
Marius Wachtler authored
-
- 16 Aug, 2016 2 commits
-
-
Kevin Modzelewski authored
Fix uses of addGuard(python_object)
-
Kevin Modzelewski authored
-
- 15 Aug, 2016 4 commits
-
-
Kevin Modzelewski authored
Since we are putting more things in the IC gc references, call GC again after clearing them.
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
Hopefully this doesn't end up keeping things alive for too much extra time.
-
Kevin Modzelewski authored
and add the test that exposed it. addGuard(obj) is dangerous because obj could be deallocated+reallocated in the same spot, which is what ended up happening here.
-
- 12 Aug, 2016 5 commits
-
-
Marius Wachtler authored
VRegInfo: reduce memory usage
-
Marius Wachtler authored
-
Marius Wachtler authored
bjit: fix memory corruption
-
Marius Wachtler authored
we used to destroy the ICInfo before all references to it got deleted. I run into this when using the glibc alloc instead of jemalloc
-
Marius Wachtler authored
SourceInfo: remove the AST stmt copy, remove special handling of lambdas
-
- 11 Aug, 2016 3 commits
-
-
Marius Wachtler authored
-
Marius Wachtler authored
had to change AST_Expression to store a stmt instead of a expr but this has the advantage that memory managment is easier
-
Marius Wachtler authored
-
- 10 Aug, 2016 5 commits
-
-
Marius Wachtler authored
use PyObject_Malloc in pyston::DenseMap, smaller ICInvalidator, reduce malloc calls
-
Marius Wachtler authored
llvm::SmallPtrSet<ICSlotInfo*, 2> and std::unordered_set<ICSlotInfo*> have the same size but the SmallPtrSet has the advantage that it can already store 2 elements in there and does not allocate 10 elements in the constructor
-
Marius Wachtler authored
-
Marius Wachtler authored
-
Marius Wachtler authored
it is slighlty faster for small allocations and has the advantage that it is easier to track how much memory our python objects are using
-
- 08 Aug, 2016 1 commit
-
-
Kevin Modzelewski authored
runtime ICs: use mmap instead of malloc for executable code
-