{"push_id":2922009186,"size":2,"distinct_size":2,"ref":"refs/heads/master","head":"218060d35cad5f112632170367c8099c3e400b3b","before":"f9b231194727303f57e22eb54690dff9c6f2250a","commits":[{"sha":"48ea68aa581d492c48fe9e08b54e9ce26f3508b9","author":{"name":"Andres Noetzli","email":"a27884a205c28e99df76dbb0d834084a9a704cba@gmail.com"},"message":"Refactor preprocessing pass registration (#2468)\n\nThis commit refactors how preprocessing pass registration works,\r\ninspired by LLVM's approach [0]. The basic idea is that every\r\npreprocessing pass declares a static variable of type `RegisterPass` in\r\nits source file that registers the pass with the\r\n`PreprocessingPassRegistry` when starting the program. The registry is a\r\nsingleton that keeps track of all the available passes and allows other\r\ncode to create instances of the passes (note: previously the registry\r\nitself was owning the passes but this is no longer the case). One of the\r\nadvantages of this solution is that we have a list of available passes\r\ndirectly at the beginning of the program, which is useful for example\r\nwhen parsing options.\r\n\r\nAs a side effect, this commit also fixes the SortInference pass, which\r\nwas expecting arguments other than the preprocessing pass context in its\r\nconstructor.\r\n\r\nThis commit is required for fixing dumping pre/post preprocessing\r\npasses. It is also the ground work for allowing the user to specify a\r\npreprocessing pipeline using command-line arguments.\r\n\r\n[0] https://llvm.org/docs/WritingAnLLVMPass.html","distinct":true,"url":"https://api.github.com/repos/anwu1219/CVC4/commits/48ea68aa581d492c48fe9e08b54e9ce26f3508b9"},{"sha":"218060d35cad5f112632170367c8099c3e400b3b","author":{"name":"Andrew Wu","email":"17b5f9c7210d2f95511056181c9c68689273a3ac@davidson.edu"},"message":"Merge branch 'master' into master","distinct":true,"url":"https://api.github.com/repos/anwu1219/CVC4/commits/218060d35cad5f112632170367c8099c3e400b3b"}]}
{"actor":{"display_login":"anwu1219"}}