An error occurred fetching the project authors.
- 04 Dec, 2015 2 commits
-
-
Marius Wachtler authored
because when calling a function with return type BOOL we currently expect it to return a i64. This got triggered by the inliner
-
Marius Wachtler authored
Previously we generated patchpoints for every call because the callee could do a frame introspection and we could not retrieve the frame info without the additional patchpoint informations. This change moves all required information inside the FrameInfo. Because the FrameInfo does not have a fixed offset (different num of stack args and OSR functions reuse the frame info from the interpreter), we generate at function entry a stack variable which points to the frame_info and than we emit a stackmap intrinsic in order to know which basepointer relative address it has. The current statement inside the FrameInfo gets only updated on direct calls - patchpoints still attach it directly instead of updating the memory. Because always updating the variable is a small slowdown. This allows us todo inlining of trivial call sites at the llvm IR level.
-
- 02 Sep, 2015 1 commit
-
-
Marius Wachtler authored
-
- 12 Aug, 2015 1 commit
-
-
Kevin Modzelewski authored
ie everything that the linter was warning about
-
- 03 Aug, 2015 1 commit
-
-
Marius Wachtler authored
-
- 30 Jul, 2015 1 commit
-
-
Kevin Modzelewski authored
-
- 28 Jul, 2015 1 commit
-
-
Kevin Modzelewski authored
Which also involves templatizing most of the things that it calls as well. CompiledFunction's now have an additional parameter "exception_style", and we will try to call a version of the function with the requested style. All of our runtime functions are written to the CXX style, and there's not a whole lot of benefit until we templatize the runtime functions individually.
-
- 18 Jul, 2015 1 commit
-
-
Kevin Modzelewski authored
They're not used any more, and even though they are empty NopLocks, they change the struct structure.
-
- 17 Jul, 2015 1 commit
-
-
Kevin Modzelewski authored
- put it into a header file (and start including it) - move the grow-the-array part into a separate function to encourage the fast-path to get inlined.
-
- 03 Jul, 2015 2 commits
-
-
Travis Hance authored
-
Travis Hance authored
-
- 06 Mar, 2015 1 commit
-
-
Kevin Modzelewski authored
-
- 13 Feb, 2015 1 commit
-
-
Chris Toshok authored
-
- 09 Jan, 2015 1 commit
-
-
Kevin Modzelewski authored
Use operator new() to get access to tp_alloc in a C++-ish way. Instead of passing the object's class to the constructor, pass it to new(). We need to do this since the class gets to pick how the object gets allocated, including how large it will end up being. Unfortunately it looks like defining an operator new on a subclass hides the operator new from a superclass, even if they have different signatures. Macros to the rescue.
-
- 05 Jan, 2015 1 commit
-
-
Kevin Modzelewski authored
(update copyright notices)
-
- 06 Aug, 2014 1 commit
-
-
Kevin Modzelewski authored
Previously the gc header had to be set and managed by the user of the GC, which didn't make much sense. Also took this opportunity to clean up a bunch of old cruft. Also got rid of ObjectFlavors and AllocationKinds, in preference for a GCKind which I think makes more sense. Right now there are only three different GCKinds, but I'm not sure if the previous AllocationKinds should each get their own GCKind.
-
- 17 Jun, 2014 2 commits
-
-
Kevin Modzelewski authored
Make rules more general, and generate rules that can't be patterns Made it easy to add a pyston_grwl target
-
Kevin Modzelewski authored
Add some basic locking to: - code generation (one lock for all of it) - garbage collection (spin lock for allocations, global serialization for collections) - lists (mutex per list object) Can run the GRWL on some simple tests (microbenchmarks/thread_contention.py and thread_uncontended.py) Performance is not great yet
-
- 07 Jun, 2014 1 commit
-
-
Kevin Modzelewski authored
Not all exposed to python code yet This commit is pretty large because it contains two separate but interrelated changes: - Rewrite the function argument handling code (callCompiledFunction and resolveCLFunc) into a single callFunc that does its own rewriting, and support the new features. -- this required a change of data representations, so instead of having each function consist of variants with unrelated signatures, we can only have a single signature, but multiple type specializations of that signature - To do that, had to rewrite all of the stdlib functions that used signature-variation (ex range1 + range2 + range3) to be a single function that took default arguments, and then took action appropriately.
-
- 03 Jun, 2014 2 commits
-
-
Kevin Modzelewski authored
-
Krzysztof Klinikowski authored
-
- 02 Jun, 2014 1 commit
-
-
Kevin Modzelewski authored
The presence of an allocated "elts" pointer is determined by capacity>0, but the GC handler was incorrectly only choosing to visit it if size>0. Not all code paths free the elts array if size goes down to zero, so it could happen that capacity>0 and size=0, and then the elts array would not be tracked even though it was expected to be. Added a test that illustrates this.
-
- 30 May, 2014 1 commit
-
-
Kevin Modzelewski authored
-
- 20 May, 2014 1 commit
-
-
xiafan_linux authored
add the python test file for del statement fix the ic enable macro of delitem make the implementation of del statement exception-aware
-
- 13 May, 2014 1 commit
-
-
Kevin Modzelewski authored
Changed the indentation of pretty much the entire codebase. It did some things that I don't like that seem not configurable, but overall it seems like an improvement, and nice to have a canonical format going forward.
-
- 30 Apr, 2014 1 commit
-
-
Marius Wachtler authored
-
- 21 Apr, 2014 1 commit
-
-
Kevin Modzelewski authored
-
- 03 Apr, 2014 1 commit
-
-
Kevin Modzelewski authored
-