[PATCH] D127221: [Clang] Enable -print-pipeline-passes in clang.
Arthur Eubanks via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Sep 11 14:28:19 PDT 2023
aeubanks accepted this revision.
aeubanks added a comment.
lg with one test comment
================
Comment at: clang/lib/CodeGen/BackendUtil.cpp:1102
+ outs() << "\n";
+ return;
+ }
----------------
jcranmer-intel wrote:
> aeubanks wrote:
> > I wouldn't return here, doesn't seem right that we'll skip running the opt pipeline but continue with compilation. we should either bail out entirely of producing any output files (which would probably require code changes elsewhere), or run everything as normal, not do something weird where we don't run the optimization pipeline but still output files
> This is basically doing the same thing that `opt -print-pipeline-passes` is doing: https://github.com/llvm/llvm-project/blob/d1b418f55263ec48d14f220ad020d55f126cfcab/llvm/tools/opt/NewPMDriver.cpp#L500-L524.
>
> In the case of emitting LLVM IR or bitcode, this logic is sufficient to not emit any output. In the case of .s or .o files, it looks like I have to also bail out of running `RunCodegenPipeline`
if skipping `RunCodegenPipeline` doesn't produce any output file, sgtm
================
Comment at: clang/test/CodeGen/print-pipeline-passes.c:8
+// CHECK: always-inline
+// CHECK-SAME: verify
+void Foo(void) {}
----------------
I believe this will fail in non-assert builds
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D127221/new/
https://reviews.llvm.org/D127221
More information about the cfe-commits
mailing list