[llvm-dev] Specifying passes for ThinLTO?

David Chisnall via llvm-dev llvm-dev at lists.llvm.org
Thu Apr 12 02:20:32 PDT 2018


Hi,

I am trying to test ThinLTO mode with lld, but am seeing failures because (at optimisation levels above -O0), clang inserts calls to clang.arc.use, which are expected to be removed by the ObjCARCCompact pass.  Unfortunately, this pass doesn’t seem to be being run by lld (and adding -mllvm -print-after-all indicates that only SimplifyCFG is being run, which is a bit surprising, though the output is a bit mangled and appears to be coming from interleaved threads, so it’s possible that this is misleading).  The documentation tells me that I can specify a new pass manager pipeline, but doesn’t tell me what the argument to this flag looks like.  How do I tell lld that it should be running the ObjCARC passes during ThinLTO?

David



More information about the llvm-dev mailing list