[LLVM Flang] Code gen option: `-emit-fir` vs `-emit-mlir`

Hello,

We have recently started working on adding code-gen support in the Flang driver. Our first PR is available on GitHub [1] and implements the "parse tree --> MLIR" step.

What should be the corresponding option in `flang-new`? `bbc` uses `-emit-fir` [2], but `-emit-mlir` would probably be more accurate. Indeed, currently the generated output uses multiple MLIR dialects (rather than just FIR).

Please comment either here or on GitHub.

Thank you,
-Andrzej

[1] https://github.com/flang-compiler/f18-llvm-project/pull/1008
[2] https://github.com/flang-compiler/f18-llvm-project/blob/fir-dev/flang/tools/bbc/bbc.cpp#L87-L90

Hi Andrzej,

For my two cents, I have a mild preference for -emit-fir. When I see -emit-mlir I think it implies that only the standard dialect will be present (i.e. no fir in there). That could just be me though. Like I said, mine is a mild preference and switching wouldn't cause me much issue.

-- Alexis

Hi Andrzej,

For my two cents, I have a mild preference for -emit-fir. When I see -emit-mlir I think it implies that only the standard dialect will be present (i.e. no fir in there).

FYI: the standard dialect is shrinking and the goal is for it to disappear entirely.

Interesting, I did not know that. In light of this new information, perhaps -emit-mlir does fit better.

Thank you both for your comments! One other minor point in favour of `-emit-mlir` - `bbc` already uses `mlir` for file extensions.

-Andrzej