llvm-project/flang/lib/Optimizer
Chris Lattner d85eb4e2d6 [AsmParser] Introduce a new "Argument" abstraction + supporting logic
MLIR has a common pattern for "arguments" that uses syntax
like `%x : i32 {attrs} loc("sourceloc")` which is implemented
in adhoc ways throughout the codebase.  The approach this uses
is verbose (because it is implemented with parallel arrays) and
inconsistent (e.g. lots of things drop source location info).

Solve this by introducing OpAsmParser::Argument and make addRegion
(which sets up BlockArguments for the region) take it.  Convert the
world to propagating this down.  This means that we correctly
capture and propagate source location information in a lot more
cases (e.g. see the affine.for testcase example), and it also
simplifies much code.

Differential Revision: https://reviews.llvm.org/D124649
2022-04-29 12:19:34 -07:00
..
Builder [mlir:NFC] Remove the forward declaration of FuncOp in the mlir namespace 2022-04-18 12:01:55 -07:00
CodeGen [NFC] More synching of sources for upstreaming. 2022-04-26 14:54:43 -07:00
Dialect [AsmParser] Introduce a new "Argument" abstraction + supporting logic 2022-04-29 12:19:34 -07:00
Support [flang][driver] Add support for -S and implement -c/-emit-obj 2022-03-09 15:48:09 +00:00
Transforms [mlir:NFC] Remove the forward declaration of FuncOp in the mlir namespace 2022-04-18 12:01:55 -07:00
.clang-format [flang] [LLVMify F18] Compiler module folders should have capitalised names (flang-compiler/f18#980) 2020-02-25 07:11:52 -08:00
.clang-tidy Revert "[fir] Update clang-tidy for the Optimizer directory" 2021-10-13 09:29:54 +02:00
CMakeLists.txt [fir] Add the DoLoopHelper 2021-10-13 21:48:45 +02:00