[flang][fir] Add array value operations.
authorEric Schweitz <eschweitz@nvidia.com>
Wed, 24 Feb 2021 16:02:58 +0000 (08:02 -0800)
committerEric Schweitz <eschweitz@nvidia.com>
Fri, 26 Feb 2021 03:16:43 +0000 (19:16 -0800)
commit67360decc3d4bda363c2fa2550eb1c2b876c8cf0
treebc49a93e61adb5af16fcc998f57472bee2607925
parente890fffcab8b7e95deba4269c14db9fab003a737
[flang][fir] Add array value operations.

We lower expressions with rank > 0 to a set of high-level array operations.
These operations are then analyzed and refined to more primitve
operations in subsequent pass(es).

This patch upstreams these array operations and some other helper ops.

Authors: Eric Schweitz, Rajan Walia, Kiran Chandramohan, et.al.

https://github.com/flang-compiler/f18-llvm-project/pull/565

Differential Revision: https://reviews.llvm.org/D97421
flang/include/flang/Optimizer/Dialect/FIROps.td
flang/include/flang/Optimizer/Dialect/FIRType.h
flang/lib/Optimizer/Dialect/FIROps.cpp
flang/lib/Optimizer/Dialect/FIRType.cpp
flang/test/Fir/fir-ops.fir