This is an archive of the discontinued LLVM Phabricator instance.

[flang][fir] Upstream FIR code generation
AbandonedPublic

Authored by schweitz on Jan 25 2021, 3:15 PM.

Details

Summary

FIR code generation.

Converts FIR(MLIR) code to the LLVM-IR dialect (and to LLVM IR proper).

  1. Code generation that takes the FIR dialect and converts it to the LLVM-IR dialect. Ops, types, etc. are converted to LLVM for eventual generation of object code.
  2. Two phase process. A partial conversion of some Ops to other Ops and then a full conversion to LLVM-IR dialect.
  3. Support for target selection via a target triple.
  4. Adds stubs and some tablegen rewrite passes.
  5. A model to translate C++ interfaces to LLVM-IR dialect at compile-time.

A history of all these sources, including all contributors, previous reviews and revisions, etc., can be found at https://github.com/flang-compiler/f18-llvm-project/

These diffs depend upon D95400.

Diff Detail

flang/lib/Optimizer/CodeGen/CGOps.cpp