These are chat archives for dropbox/pyston

Dec 2015
An Long
Dec 13 2015 16:59
@kmod I think I'm just disabled our ast module's setupAST(), but the compile function is using it's other method. Now I'm just porting the compile function to use CPython's Py_CompileStringFlags function. But it deps on the CPython's Python/compile.c file. and in this file CPython have the logic to compiling not only the AST but the byte code which is not needed. Is this a right way to doing this?
An Long
Dec 13 2015 17:05
Oh sorry, I saw we don’t deps Python/compile.c 😱
Dec 13 2015 17:42
Hi, I made some changes on numeric types(int, float, long). When run the test suite(binop_ics), it cause Exception: ("noninit_count('slowpath_binop') <= 10", 'slowpath_binop', 1005) What does it mean?
Marius Wachtler
Dec 13 2015 20:39
I never got an exception before for this but whats the output running it with -Ssn for the slowpath_binop counter?
Kevin Modzelewski
Dec 13 2015 21:56
@Daetalus that means that it wasn't able to rewrite (trace) the binop logic
it's hard to know why without seeing the changes; I'm happy to take a look
or you can also step through it with gdb and see where it decides to abort the rewrite
@aisk I wouldn't try to use CPython's compile() method, since they don't know how to compile to our format and we don't know how to use theirs
my suggestion would be to take out ast.cpp completely, and change the places that call boxAST()/unboxAST() to use the equivalent CPython functions
from Python-ast.c
looks like it's the ast2obj_* and obj2ast_* sets of functions that might be useful