[all-commits] [llvm/llvm-project] 56c81d: [flang][lowering] handle MERGE with different FSOU...
Valentin Clement (バレンタイン クレメン) via All-commits
all-commits at lists.llvm.org
Fri Jun 24 12:05:32 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 56c81d2554baa208ca697b3ea958613d48a7b963
https://github.com/llvm/llvm-project/commit/56c81d2554baa208ca697b3ea958613d48a7b963
Author: Valentin Clement <clementval at gmail.com>
Date: 2022-06-24 (Fri, 24 Jun 2022)
Changed paths:
M flang/lib/Lower/IntrinsicCall.cpp
M flang/test/Lower/Intrinsics/merge.f90
Log Message:
-----------
[flang][lowering] handle MERGE with different FSOURCE and TSOURCE types
In merge FSOURCE and TSOURCE must have the same Fortran dynamic types,
but this does not imply that FSOURCE and TSOURCE will be lowered to the
same MLIR types. For instance, TSOURCE may be a character expression
with a compile type constant length (!fir.char<1,4>) while FSOURCE may
have dynamic length (!fir.char<1,?>).
Cast FSOURCE to TSOURCE MLIR types to handle these cases.
This patch is part of the upstreaming effort from fir-dev branch.
Reviewed By: PeteSteinfeld
Differential Revision: https://reviews.llvm.org/D128507
Co-authored-by: Jean Perier <jperier at nvidia.com>
More information about the All-commits
mailing list