{"push_id":1044108217,"size":7,"distinct_size":1,"ref":"refs/heads/next","head":"390cfbd467bd1ddc2ed570285ef36e7f401963d8","before":"31c0cdf853f7bc41caea3ea8e1392ff07a464514","commits":[{"sha":"9e61b5e5c57bcd5cb8179a0b0bbc97651959f14d","author":{"email":"34e2ec70b176ebd61c5c1381eefc007b50021aa3@fb.com","name":"Max Wang"},"message":"Kill unused ThreadLocal Vconst kind\n\nSummary: Also throw in const-correctness in vasm-check.cpp.\n\nReviewed By: swtaarrs\n\nDifferential Revision: D3005227\n\nfb-gh-sync-id: c6b2f064bfdf508b2ccb1824b851654f654efe9e\nshipit-source-id: c6b2f064bfdf508b2ccb1824b851654f654efe9e","distinct":false,"url":"https://api.github.com/repos/PPC64/hhvm/commits/9e61b5e5c57bcd5cb8179a0b0bbc97651959f14d"},{"sha":"0a51764f4be6de5d74feb4ee536ee5d4a3054239","author":{"email":"43293424662417ef47778d90f514540cf7a51fae@fb.com","name":"Kasper Kopec"},"message":"Use lists instead of sets to pass file names around in search service\n\nSummary:Search service is another place that has a lot of global, but not shared (in the sense of \"not in shared memory\") state that will have to be synchronized from master typechecker process. It involves things like \"set of all file names\", which at our scale are pretty slow[1]. Lists seem to perform much better.\n\nIn the process of eliminating them, it turned out that they only exist because of merge operation in HackSearchService.update_search_index, which merges \"files\" with \"php_files\" to enable searching in non-Hack files too. But ever since Hack build \"files\" is a superset of \"php_files\" (there even is a comment describing it), so the merge operation is no-op, and the only place that uses php_files can be removed, along with it's generation in parser code.\n\nReviewed By: dlreeves, int3\n\nDifferential Revision: D2981059\n\nfb-gh-sync-id: f3bdd673fb44cb3a91ea7a4dde74f456f4aa4674\nshipit-source-id: f3bdd673fb44cb3a91ea7a4dde74f456f4aa4674","distinct":false,"url":"https://api.github.com/repos/PPC64/hhvm/commits/0a51764f4be6de5d74feb4ee536ee5d4a3054239"},{"sha":"b70c6723a16abcc36110d09423acd4311a0338ed","author":{"email":"521b71b66118ece0fda08843b612c77cfd6c2588@fb.com","name":"Jez Ng"},"message":"Fix formatting\n\nReviewed By: alexchow\n\nDifferential Revision: D3005009\n\nfb-gh-sync-id: b16bd5ef035497434da6caf501526c46e9356321\nshipit-source-id: b16bd5ef035497434da6caf501526c46e9356321","distinct":false,"url":"https://api.github.com/repos/PPC64/hhvm/commits/b70c6723a16abcc36110d09423acd4311a0338ed"},{"sha":"68a76afc3e5faf16e778708d50926f644c1fc925","author":{"email":"608a0426cfdb46c29ac39909e0d1ac78f6a14462@fb.com","name":"Brett Simmers"},"message":"Delete LLVM backend\n\nSummary:\n\nUnfortunately the maintenance burden has grown too large, especially\nconsidering some upcoming work multiple people have planned. We have no reason\nto think the performance situation will change any time soon (it's a small\nregression right now), so it's time to say goodbye.\n\nReviewed By: edwinsmith\n\nDifferential Revision: D3002148\n\nfb-gh-sync-id: 4dcad565e9dd7130d2a4f6044820799ae82c5efe\nshipit-source-id: 4dcad565e9dd7130d2a4f6044820799ae82c5efe","distinct":false,"url":"https://api.github.com/repos/PPC64/hhvm/commits/68a76afc3e5faf16e778708d50926f644c1fc925"},{"sha":"fc7e63d756b0b4f79e8916ebaf725e4d817917d4","author":{"email":"43293424662417ef47778d90f514540cf7a51fae@fb.com","name":"Kasper Kopec"},"message":"Rebuild search index in IDE process during idle times\n\nSummary:As mentioned in D2981059, search service has global state that has to be synchronized from master typechecker process. Those are ref variables in FuzzySearchService and TrieSearchService. They are pretty big and complicated, and marshalling them, sending over channel and unmarshalling blocks the IDE process for few second and makes the master typechecker init slower by few seconds.\n\nRecreating them from scratch using the data in shared memory takes roughly same amount of time, so we can do this instead. Moreover, if at later time we can make hh_client --search connect to IDE process instead of master we can eliminate index construction in master completely, cutting parsing time by half (#8682370).\n\nBut blocking the IDE process for the duration of index construction is also not good, so instead I chunk this process into 1000-sized file batches that are processed when server is idle.\n\nReviewed By: dlreeves, int3\n\nDifferential Revision: D2981467\n\nfb-gh-sync-id: cec68ab6738868ae79309351a06e527c53e7b9ea\nshipit-source-id: cec68ab6738868ae79309351a06e527c53e7b9ea","distinct":false,"url":"https://api.github.com/repos/PPC64/hhvm/commits/fc7e63d756b0b4f79e8916ebaf725e4d817917d4"},{"sha":"ff5c5835b1f7ea4d8882d558b18df6febe7f65f7","author":{"email":"35f194896ceae88bf8aa91f57f3caae13d1229bb@fb.com","name":"Rick Lavoie"},"message":"Replace hand-rolled vector implementations\n\nSummary:In a few places we allocate a raw array of memory (without running any\nconstructors), tracking the number of constructed elements, and running placement\nnew and destructors manually as elements are added or removed from the\narray. This is exactly what req::vector does, so just use that instead.\n\nReviewed By: markw65, edwinsmith\n\nDifferential Revision: D3006162\n\nfb-gh-sync-id: 96ba944ba5b510a1aa7d2a595dff1d8a5d925d70\nshipit-source-id: 96ba944ba5b510a1aa7d2a595dff1d8a5d925d70","distinct":false,"url":"https://api.github.com/repos/PPC64/hhvm/commits/ff5c5835b1f7ea4d8882d558b18df6febe7f65f7"},{"sha":"390cfbd467bd1ddc2ed570285ef36e7f401963d8","author":{"email":"502bc909b654c9cb8d414d676a63ba565274798e@eldorado.org.br","name":"Gustavo Serra Scalet"},"message":"Merge commit 'ff5c5835b1f7ea4d8882d558b18df6febe7f65f7' into next\n\nslowly updating... currently the handleSRHelper was not removed yet\n\nConflicts:\n\thphp/runtime/vm/jit/irlower.cpp\n\thphp/runtime/vm/jit/vasm-llvm.cpp\n\thphp/runtime/vm/jit/vasm-ppc64.cpp","distinct":true,"url":"https://api.github.com/repos/PPC64/hhvm/commits/390cfbd467bd1ddc2ed570285ef36e7f401963d8"}]}