{"push_id":1118177197,"size":8,"distinct_size":8,"ref":"refs/heads/rearrange_and_call","head":"38dafaa9d638756a9f601f4f3e9d0df6d78b508d","before":"34bb6f3cb5784431c2bd5e5c76690a5110387abd","commits":[{"sha":"e1b5d9c9a07dac54322553155011938c7f54d378","author":{"email":"fd5fdcd2a5d35ccb481fc3d8dd4d559f2b8c0652@gmail.com","name":"Marius Wachtler"},"message":"checkAndThrowCAPIException needs to do a 32bit comparison in some cases\nthis should fix a very annoying rarely encountered issue...","distinct":true,"url":"https://api.github.com/repos/kmod/pyston/commits/e1b5d9c9a07dac54322553155011938c7f54d378"},{"sha":"b1b66782878fd0b4c209e00923468fcde290137f","author":{"email":"fd5fdcd2a5d35ccb481fc3d8dd4d559f2b8c0652@gmail.com","name":"Marius Wachtler"},"message":"enable cffi test","distinct":true,"url":"https://api.github.com/repos/kmod/pyston/commits/b1b66782878fd0b4c209e00923468fcde290137f"},{"sha":"8b0045633e4a5ed8549dc428a4a4282d049f7c6c","author":{"email":"fd5fdcd2a5d35ccb481fc3d8dd4d559f2b8c0652@gmail.com","name":"Marius Wachtler"},"message":"Merge pull request #1175 from undingen/checkAndThrowCAPIException_size\n\ncheckAndThrowCAPIException needs to do a 32bit comparison in some cases","distinct":true,"url":"https://api.github.com/repos/kmod/pyston/commits/8b0045633e4a5ed8549dc428a4a4282d049f7c6c"},{"sha":"69d40057be56b170d900611788d807fab3ba2203","author":{"email":"0178b9ae37a04c85ef49a1292c3fd75795bef75c@gmail.com","name":"Kevin Modzelewski"},"message":"Make this command line match the one in CMakelists.txt","distinct":true,"url":"https://api.github.com/repos/kmod/pyston/commits/69d40057be56b170d900611788d807fab3ba2203"},{"sha":"1a5e60539fe0b4a2f7a3992ecf60a3a255e442df","author":{"email":"0178b9ae37a04c85ef49a1292c3fd75795bef75c@gmail.com","name":"Kevin Modzelewski"},"message":"Change rearrangeArgs to taking a callback\n\nThis function is complicated because it has so many return values (out-parameters).\nIt also returns a decent amount of information about what the caller has to do\nafter it is done with the args (decref them, decref the rewritten ones, etc), and\nthe contract was getting very complicated.  It also had some complicated rules\nabout how the caller had to set up certain input arguments.\n\nI also tried adding some optimizations to it, where it would sometimes not incref all\nof the returned args; I tried continuing the current scheme by passing back some information\nabout which args needed to be decref'd or not.  This was really messy and was also a\nperf hit.\n\nSo instead, switch it to being callback-based.  I think this should clean it up quite a bit\nand also open up some room for more optimizations.\n\nThis commit is just a refactor -- it changes the name to rearrangeArgumentsAndCall, which takes\na \"continuation\" callback.  For now it just calls rearrangeArguments under the hood.","distinct":true,"url":"https://api.github.com/repos/kmod/pyston/commits/1a5e60539fe0b4a2f7a3992ecf60a3a255e442df"},{"sha":"6e7da64dc889092566e307a01e6578ad614748c7","author":{"email":"0178b9ae37a04c85ef49a1292c3fd75795bef75c@gmail.com","name":"Kevin Modzelewski"},"message":"Actually implement rearrangeArgumentsAndCall\n\nAnd add an optimization that in the fast paths, we don't incref any args.","distinct":true,"url":"https://api.github.com/repos/kmod/pyston/commits/6e7da64dc889092566e307a01e6578ad614748c7"},{"sha":"82fccc6ad14c479f74e5b59ed26bf0476803b3b4","author":{"email":"0178b9ae37a04c85ef49a1292c3fd75795bef75c@gmail.com","name":"Kevin Modzelewski"},"message":"Try making rearrangeArgs not a template\n\nMy hunch is that code density is more important than avoiding\nome of the `if (rewrite_args)` checks.\n\nAlso add some hacks to get rid of the func-name-getter-as-lambda,\nso we don't need to templatize on that either.\n\nResults of this commit are kind of mixed:\n\n       django_template3_10x.py            13.6s (2)            13.8s (2)  +1.4%\n sqlalchemy_imperative2_10x.py            18.8s (2)            19.0s (2)  +1.2%\n            pyxl_bench2_10x.py            10.7s (2)            10.1s (2)  -5.1%\n                       geomean                14.0s                13.8s  -0.9%","distinct":true,"url":"https://api.github.com/repos/kmod/pyston/commits/82fccc6ad14c479f74e5b59ed26bf0476803b3b4"},{"sha":"38dafaa9d638756a9f601f4f3e9d0df6d78b508d","author":{"email":"0178b9ae37a04c85ef49a1292c3fd75795bef75c@gmail.com","name":"Kevin Modzelewski"},"message":"Switch from our custom magic class to llvm::function_ref\n\nthanks Marius for the tip","distinct":true,"url":"https://api.github.com/repos/kmod/pyston/commits/38dafaa9d638756a9f601f4f3e9d0df6d78b508d"}]}