[llvm] [DXIL] Consume Metadata Analysis information in passes (PR #108034)

S. Bharadwaj Yadavalli via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 18 09:59:20 PDT 2024


================
@@ -247,9 +247,10 @@ class DXILPrepareModule : public ModulePass {
 
   DXILPrepareModule() : ModulePass(ID) {}
   void getAnalysisUsage(AnalysisUsage &AU) const override {
+    AU.setPreservesAll();
     AU.addPreserved<ShaderFlagsAnalysisWrapper>();
     AU.addPreserved<DXILResourceMDWrapper>();
-    AU.addPreserved<DXILMetadataAnalysisWrapperPass>();
+    AU.addRequired<DXILMetadataAnalysisWrapperPass>();
----------------
bharadwajy wrote:

> Likely an opportunity for me to learn something:
> 
> If we're using `setPreservesAll()` why do we need to explicitly call `addPreserved` on any other passes?

Correct. Individual `addPreserved` lines are not needed. Originally deleted but missed in the subsequent rebase.


https://github.com/llvm/llvm-project/pull/108034


More information about the llvm-commits mailing list