[flang-commits] [flang] ec4681d - [flang][FIR] Make fir.type a valid memref element type (#199236)
via flang-commits
flang-commits at lists.llvm.org
Fri May 22 10:20:11 PDT 2026
Author: Zhen Wang
Date: 2026-05-22T10:20:06-07:00
New Revision: ec4681df3d6bd1aeb9d00ee93c54eb7d4001cdff
URL: https://github.com/llvm/llvm-project/commit/ec4681df3d6bd1aeb9d00ee93c54eb7d4001cdff
DIFF: https://github.com/llvm/llvm-project/commit/ec4681df3d6bd1aeb9d00ee93c54eb7d4001cdff.diff
LOG: [flang][FIR] Make fir.type a valid memref element type (#199236)
Implement `MemRefElementTypeInterface` on `fir::RecordType` so that
`memref<!fir.type<…>>` verifies, enabling downstream passes to use
memrefs of Fortran derived types.
Added:
Modified:
flang/include/flang/Optimizer/Dialect/FIRTypes.td
Removed:
################################################################################
diff --git a/flang/include/flang/Optimizer/Dialect/FIRTypes.td b/flang/include/flang/Optimizer/Dialect/FIRTypes.td
index c58d75851349e..dd7ca8169fd86 100644
--- a/flang/include/flang/Optimizer/Dialect/FIRTypes.td
+++ b/flang/include/flang/Optimizer/Dialect/FIRTypes.td
@@ -14,6 +14,7 @@
#define FIR_DIALECT_FIR_TYPES
include "mlir/IR/AttrTypeBase.td"
+include "mlir/IR/BuiltinTypeInterfaces.td"
include "flang/Optimizer/Dialect/FIRDialect.td"
//===----------------------------------------------------------------------===//
@@ -313,7 +314,7 @@ def fir_PointerType : FIR_Type<"Pointer", "ptr"> {
}];
}
-def fir_RecordType : FIR_Type<"Record", "type"> {
+def fir_RecordType : FIR_Type<"Record", "type", [MemRefElementTypeInterface]> {
let summary = "FIR derived type";
let description = [{
More information about the flang-commits
mailing list