- 12 Dec, 2014 4 commits
-
-
Kevin Modzelewski authored
Move some type-related stuff into typeobject.cpp or descrobject.cpp
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
Separated out from some more involved changes that are required to get the 'pwd' module working.
-
Kevin Modzelewski authored
-
- 11 Dec, 2014 2 commits
-
-
Kevin Modzelewski authored
Haven't added structseq.c to the build quite yet
-
Kevin Modzelewski authored
Remove some definitions that should no longer be in there (structs for which we have Pyston-internal definitions). Instead of doing "typedef void PyIntObject", do "struct _PyIntObject; typedef struct _PyIntObject PyIntObject;" which prevents spurious things like type conversions or sizeof(void)'s.
-
- 10 Dec, 2014 13 commits
-
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
I'm not sure that we need to do this at the expression-level -- I think we just have to do it at the statement level.
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
ie 'from a import b' now attempts an 'import a.b' if b does not already exist. This also works for imports caused by__all__.
-
Kevin Modzelewski authored
Previously we were calling it just 'b'.
-
Kevin Modzelewski authored
ScopeInfo involves checking the whole function subtree to resolve scoping references. SourceInfo has information about the specific function. is_generator used to be in ScopeInfo, but accessing it would require doing the full subtree analysis, which can be unnecessary. This lets us avoid analyzing function subtrees that are never entered.
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
With some changes - renamed AST_Exec::expr -> body (to match CPython) - removed references to AST_SetComp
-
Kevin Modzelewski authored
-
- 09 Dec, 2014 2 commits
-
-
Kevin Modzelewski authored
add two passes which remove unnecessary boxing
-
Kevin Modzelewski authored
-
- 07 Dec, 2014 4 commits
-
-
Marius Wachtler authored
* the first one removes boxInt, boxFloat and boxBool calls where the argument is coming from a corresponding unbox call * the second pass removes duplicate boxing calls inside the same BB together they improve the performance by about 10%
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
- 06 Dec, 2014 9 commits
-
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
If we had to guard on the type of an object but the variable ended up being undefined, we treated that as a guard failure (not sure why). Fixing that exposed another issue: if we guard that an object is an int, we will try to unbox it if necessary. If the variable wasn't defined, then we will try to unbox some garbage memory. Use the new handlePotentiallyUndefined to deal with that.
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
Before, for compiled functions we used dwarf line number information. Now it's switched to using the new frame introspection support, and we pass through the AST_stmt* as one of the arguments. This gets us the line number and also the definition of execution point.
-
Kevin Modzelewski authored
and exc_info -> unw_info (This makes more sense with the next change, but I wanted to separate this large renaming from the functional change.)
-
Kevin Modzelewski authored
I wonder if other people have run into this.
-
Kevin Modzelewski authored
Previously things were hardcoded to only allow a single entry point to the interpreter (since that is how the unwinder determines if the frame is an interpreter frame). Instead of having astInterpretFunction be the interpreter frame, make execute() the frame. Have to make it a static class function so we can take its address.
-
- 05 Dec, 2014 4 commits
-
-
Kevin Modzelewski authored
Can still switch back to the default regalloc using the -b flag, but it looks like the basic register allocator cuts the LLVM JIT time significantly, and improves every one of our benchmarks.
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
Kevin Modzelewski authored
-
- 03 Dec, 2014 1 commit
-
-
Kevin Modzelewski authored
With the recent package import support, we broke importing optparse. This is because we now can import "encodings" (a package), which imports codecs, which raises a SystemError when trying to import _codecs which we don't support yet. This was getting ignored before since optparse wrapped this process (which happens via "import gettext") in a try-except and catches the ImportError.
-
- 02 Dec, 2014 1 commit
-
-
Kevin Modzelewski authored
-