[flang-commits] [flang] [flang][Driver] Add support for -mllvm -print-pipeline-passes (PR #106141)
Tarun Prabhu via flang-commits
flang-commits at lists.llvm.org
Tue Aug 27 04:21:42 PDT 2024
tarunprabhu wrote:
> How is this different to `debug-pass-manager`?
In essence, `-mllvm -print-pipeline-passes` will provide a list of passes that _will be_ run for some invocation of the compiler. `-fdebug-pass-manager` will show what was _actually_ run. More details below.
`-fdebug-pass-manager` executes the underlying action, while this simply prints the pipeline and terminates. This is the same as clang's behavior when it is passed `-mllvm -print-pipeline-passes`
The output format is also very different. This prints a list of all the passes in a format that is compatible with `-passes` . From what I can tell of `-fdebug-pass-manager`, it prints something closer to what the legacy pass manager would print with `-debug-pass=Structure` (I can't remember the exact syntax off the top of my head).
Since `-fdebug-pass-manager` actually executes the underlying action, it will also print out invalidations of analysis passes which this, obviously, cannot.
https://github.com/llvm/llvm-project/pull/106141
More information about the flang-commits
mailing list