{"push_id":744672926,"size":107,"distinct_size":74,"ref":"refs/heads/master","head":"81825c8d7532753f121bada051f359a684a12b0a","before":"8728a0539ae6fb43795bfc170fa55db53d21899c","commits":[{"sha":"c33cda3ea1e9c201a5a16b819b2acf553eae2164","author":{"email":"e30b6c4c5e34b3cc57fd363c8393ee098c08cad9@gmail.com","name":"Travis Hance"},"message":"get cpython/test_iter passing","distinct":true,"url":"https://api.github.com/repos/Daetalus/pyston/commits/c33cda3ea1e9c201a5a16b819b2acf553eae2164"},{"sha":"ad520a8cdcae9cfb023a60753c980f24992895c8","author":{"email":"e30b6c4c5e34b3cc57fd363c8393ee098c08cad9@gmail.com","name":"Travis Hance"},"message":"fixes from kmod's comments","distinct":true,"url":"https://api.github.com/repos/Daetalus/pyston/commits/ad520a8cdcae9cfb023a60753c980f24992895c8"},{"sha":"5eba95949b62afcb14b399f893ed174fbbd7b01e","author":{"email":"e30b6c4c5e34b3cc57fd363c8393ee098c08cad9@gmail.com","name":"Travis Hance"},"message":"get cpython/test_tuple.py to pass","distinct":true,"url":"https://api.github.com/repos/Daetalus/pyston/commits/5eba95949b62afcb14b399f893ed174fbbd7b01e"},{"sha":"ea949d3dba408970f8bde26249b51c392c5d3b91","author":{"email":"adc6700a11e2109483dbea4f3fd2c096ff7e81ac@gmail.com","name":"Boxiang Sun"},"message":"add float nb_power slot","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/ea949d3dba408970f8bde26249b51c392c5d3b91"},{"sha":"51a0a2612a3885247168fa94966044f86b58ba35","author":{"email":"adc6700a11e2109483dbea4f3fd2c096ff7e81ac@gmail.com","name":"Boxiang Sun"},"message":"rewrite int pow, add error check and calculate pow with mod in single","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/51a0a2612a3885247168fa94966044f86b58ba35"},{"sha":"ff530a0a112292f064fc93455037e43653b74a77","author":{"email":"adc6700a11e2109483dbea4f3fd2c096ff7e81ac@gmail.com","name":"Boxiang Sun"},"message":"rewrite long pow, add error check and calculate pow with mod in single","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/ff530a0a112292f064fc93455037e43653b74a77"},{"sha":"d3ba755756f8647b50cf3d0dbc660057ce227920","author":{"email":"adc6700a11e2109483dbea4f3fd2c096ff7e81ac@gmail.com","name":"Boxiang Sun"},"message":"add more tests for pow into float.py and long.py","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/d3ba755756f8647b50cf3d0dbc660057ce227920"},{"sha":"32d78be716d411a69edaf172c2ac52d9fb4e30ad","author":{"email":"adc6700a11e2109483dbea4f3fd2c096ff7e81ac@gmail.com","name":"Boxiang Sun"},"message":"add more test value into float pow","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/32d78be716d411a69edaf172c2ac52d9fb4e30ad"},{"sha":"50f5d0243789e57b57f6733e678bd8c1dbd8b914","author":{"email":"adc6700a11e2109483dbea4f3fd2c096ff7e81ac@gmail.com","name":"Boxiang Sun"},"message":"remove unreachable check statement, check rhs whether is even if it could not fit unsigned long","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/50f5d0243789e57b57f6733e678bd8c1dbd8b914"},{"sha":"3ea0f91e5a9a2520c98f1efdb2e783e68f5716a1","author":{"email":"adc6700a11e2109483dbea4f3fd2c096ff7e81ac@gmail.com","name":"Boxiang Sun"},"message":"add more test to long","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/3ea0f91e5a9a2520c98f1efdb2e783e68f5716a1"},{"sha":"bfe7d79e4db2b1901535fc57ce351ec8af6dd4a1","author":{"email":"d248c79c97c66a7b571fdac1accce52c99cfde88@dropbox.com","name":"Kevin Modzelewski"},"message":"Optimize slot_tp_getattr_hook\n\nie the way that __getattr__ ends up getting called.  Two main optimizations:\n- switch the initial attribute access (ie checking to see the attribute exists\n  before calling __getattr__) to use a non-throwing api.  For the typical case,\n  even though the throwing would be a C API throw, the construction of the\n  AttributeError is relatively expensive, and the object would be immediately\n  discarded anyway.\n- add rewriting to the function\n\nThey both roughly cut out half the overhead of accessing attributes on\nclasses with __getattr__.","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/bfe7d79e4db2b1901535fc57ce351ec8af6dd4a1"},{"sha":"f6c4298d3e97e1dbb4f4432a2c8313c9547024dd","author":{"email":"d248c79c97c66a7b571fdac1accce52c99cfde88@dropbox.com","name":"Kevin Modzelewski"},"message":"A couple rewriting fixes / improvements\n\n- rewriting a runtimeCall of an instancemethod was broken (this is\n  a separate code path from the much-more-common callattr form).\n- we don't need to guard on the this->cls as often in Box::getattr, specifically\n  in cases that are coming from typeLookup.  Not because the classes are fixed\n  (I think they can change), but because they are not allowed to change in a way\n  that would change what Box::getattr has the guard for (guarding on attrs_offset\n  and tp_dictoffset).\n- slightly change the place we guard on tp_getattro and tp_getattr to a place I think\n  is a bit more correct (or at least easier to understand as being correct).","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/f6c4298d3e97e1dbb4f4432a2c8313c9547024dd"},{"sha":"0ac1423493e2aef18fbd8a46147e6bdb40800d45","author":{"email":"d248c79c97c66a7b571fdac1accce52c99cfde88@dropbox.com","name":"Kevin Modzelewski"},"message":"Add class-level caching of whether __getattribute__ exists\n\nThis is not quite the same as checking whether tp_getattro\nhas been updated, since setting a __getattr__ will change\ntp_getattro.\n\nUsually this isn't that important since we will still need\nto do some special getattr handling, but in a couple specific\ncases we can optimize based on it.  In particular, this commit\noptimizes calls to isinstance(inst, cls) on instances which have\na __getattr__ set: in the common case (no __getattribute__,\nno custom __class__) we can know that the __getattr__ will not\nget called and we can stay on the isinstance fastpath.","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/0ac1423493e2aef18fbd8a46147e6bdb40800d45"},{"sha":"a96bd04f414621d70c0e3f8a12cb3f128238e415","author":{"email":"d248c79c97c66a7b571fdac1accce52c99cfde88@dropbox.com","name":"Kevin Modzelewski"},"message":"Reduce number of optimization passes we run\n\nThe previous set was based on trying to get the absolute\nbest results on microbenchmarks; go back to the small set.","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/a96bd04f414621d70c0e3f8a12cb3f128238e415"},{"sha":"5676aaa222ea695577fbe586de46e4ed13bdf543","author":{"email":"fd5fdcd2a5d35ccb481fc3d8dd4d559f2b8c0652@gmail.com","name":"Marius Wachtler"},"message":"bjit: inline trivial helper functions","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/5676aaa222ea695577fbe586de46e4ed13bdf543"},{"sha":"2716db6a74617416eee81c55ed42338a7326a8d6","author":{"email":"ebb20679fcf61956699de2df424b8a8766309cd6@gmail.com","name":"Rudi Chen"},"message":"Release leftover chunk in the TraceStack.","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/2716db6a74617416eee81c55ed42338a7326a8d6"},{"sha":"395ef377b60206d1b82f5e9998b0406ed08ad551","author":{"email":"859df6c1c6279e7773fbeb2e2f2ec962c1eb8e0d@dropbox.com","name":"Chris Toshok"},"message":"bump libpypa","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/395ef377b60206d1b82f5e9998b0406ed08ad551"},{"sha":"5c166da4017a287562b3b1b1e477c2aeaef11d45","author":{"email":"859df6c1c6279e7773fbeb2e2f2ec962c1eb8e0d@dropbox.com","name":"Chris Toshok"},"message":"include cstddef before gmp.h to fix possible breakage with gcc-4.9 installed along with gmp 5.1.3","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/5c166da4017a287562b3b1b1e477c2aeaef11d45"},{"sha":"899a4cbcc59f0e34976230610aedc7f56ce88437","author":{"email":"d248c79c97c66a7b571fdac1accce52c99cfde88@users.noreply.github.com","name":"Kevin Modzelewski"},"message":"Merge pull request #752 from rudi-c/leakfix\n\nRelease leftover chunk in the TraceStack.","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/899a4cbcc59f0e34976230610aedc7f56ce88437"},{"sha":"fa424a377bef70830e77be16b98c82d0b8dc4d66","author":{"email":"d248c79c97c66a7b571fdac1accce52c99cfde88@users.noreply.github.com","name":"Kevin Modzelewski"},"message":"Merge pull request #750 from undingen/bjit_helper\n\nbjit: inline trivial helper functions","distinct":false,"url":"https://api.github.com/repos/Daetalus/pyston/commits/fa424a377bef70830e77be16b98c82d0b8dc4d66"}]}