[PATCH] D48404: Don't modify LibFuncs in LTO

Jacob Gravelle via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 21 11:40:18 PDT 2018


jgravelle-google added a comment.

Probably just IPO then. It's still not WebAssembly specific.

Is there a good place to put the testcase? I guess test/Other?



================
Comment at: lib/Transforms/IPO/DeadArgumentElimination.cpp:83
       ModuleAnalysisManager DummyMAM;
+      DummyMAM.registerPass([&] { return TargetLibraryAnalysis(); });
       PreservedAnalyses PA = DAEP.run(M, DummyMAM);
----------------
dschuff wrote:
> I guess this isn't really a DummyMAM anymore if we are registering analyses on it?
Not sure. I can't find any non-PassManager, non-test uses of `registerPass` other than things like https://github.com/llvm-mirror/llvm/blob/baa9ccee6421c045f639b492189da86b7e2a32dd/lib/Transforms/IPO/GlobalDCE.cpp#L58 , which every callsite I can find calls `FunctionAnalysisManagerModuleProxy(DummyFAM)`, which probably still counts as being a Dummy.
Ideally here I'd like to register this pass as requiring `TargetLibraryInfo` and reusing a possibly-existing analysis, but I couldn't get that to work.


Repository:
  rL LLVM

https://reviews.llvm.org/D48404





More information about the llvm-commits mailing list