[PATCH] D112445: [fir] Add fir.array_access op
Eric Schweitz via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 3 16:49:52 PDT 2021
schweitz added a comment.
Yes, I believe that's the essence of it. Making logical copies, keeping a transaction log on an updated array, and then merging the final result back to the original. The purpose being to do the dependence analysis and elide copies where possible as an MLIR pass.
Not sure if this was mentioned before, but a value-based element update has preference. (i.e., fir.array_fetch and fir.array_update.) However, that's not entirely sufficient as certain types of values in Fortran are implicitly memory-bound, such as the trivial derived type example. In full generality, the size and layout of these values can be statically non-determinable.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D112445/new/
https://reviews.llvm.org/D112445
More information about the llvm-commits
mailing list