{"push_id":561515370,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"2f72ea95e775176f198aab40d9053954b08626bb","before":"1a377f8f1965864855e531ae172d6ff484d617c2","commits":[{"sha":"2f72ea95e775176f198aab40d9053954b08626bb","author":{"email":"420c9fb3407b8e11ac322a0e7703f7b1f526df04@gmail.com","name":"Chandler Carruth"},"message":"[PM] Switch the TargetMachine interface from accepting a pass manager\nbase which it adds a single analysis pass to, to instead return the type\nerased TargetTransformInfo object constructed for that TargetMachine.\n\nThis removes all of the pass variants for TTI. There is now a single TTI\n*pass* in the Analysis layer. All of the Analysis <-> Target\ncommunication is through the TTI's type erased interface itself. While\nthe diff is large here, it is nothing more that code motion to make\ntypes available in a header file for use in a different source file\nwithin each target.\n\nI've tried to keep all the doxygen comments and file boilerplate in line\nwith this move, but let me know if I missed anything.\n\nWith this in place, the next step to making TTI work with the new pass\nmanager is to introduce a really simple new-style analysis that produces\na TTI object via a callback into this routine on the target machine.\nOnce we have that, we'll have the building blocks necessary to accept\na function argument as well.","distinct":true,"url":"https://api.github.com/repos/llvm-project/llvm-project-submodule/commits/2f72ea95e775176f198aab40d9053954b08626bb"}]}