GSoC'22 Enzyme New pass manager
Project Update Date : September 12th , 2022 The new PassManager is now functional in Enzyme besides the legacy PassManager . So enzyme can now be used with both pass managers. Tests (.ll files) remain to be updated so that they would also test Enzyme for the new pass manager.
--------------------------------------------------------- Date : April 17th , 2022 I am applying for GSoC'22 Enzyme New pass manager integration project. This pull request is to present my candidacy. Any suggestion would be greatly helpful.
fixes #584
Hi @wsmoses @vchuravy @reikdas @tgymnich According to this line analysis is not preserved ,right? Thus I should return PreservedAnalysis::none() for the new pass manager ?
I noticed cmake was not building subdirectory BCLoad . something about ENZYME_EXTERNAL_SHARED_LIB cmake option flag ?
It's working . Produces same result. Checked for ( .bc) and also for ( .ll) files as input.
For New PM opt-12 -load ./BCLoad/BCPass-12.so -load-pass-plugin=./BCLoad/BCPass-12.so ../bclib/cblas_ddot_double.bc -S -passes=BCPass > output-cblas-ddot-npm.ll
For Legacy PM opt-12 -load ./BCLoad/BCPass-12.so -load-pass-plugin=./BCLoad/BCPass-12.so ../bclib/cblas_ddot_double.bc -S -bcloader > output-cblas-ddot.ll
Diff returns empty diff output-cblas-ddot.ll output-cblas-ddot-npm.ll
@ki9gpin can you update the test to also use the new PM, then lets merge this
updated the test to use the new pm . commit
Hi @wsmoses
the pass registration method registeroptimizerearlyepcallback is not available in llvm 12. What I found is, it was added in llvm 15. Would you take a look .