[all-commits] [llvm/llvm-project] 44eec1: [flang][FIRToMemRef] Do not peel storage-associat...

Susan Tan (ス-ザン タン) via All-commits all-commits at lists.llvm.org
Wed Sep 9 10:47:48 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 44eec13c0264542d1d116ac0e8c2dcf1153fe37c
      https://github.com/llvm/llvm-project/commit/44eec13c0264542d1d116ac0e8c2dcf1153fe37c
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-09-09 (Wed, 09 Sep 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    A flang/test/Transforms/FIRToMemRef/view-op-storage-association.mlir

  Log Message:
  -----------
   [flang][FIRToMemRef] Do not peel storage-association views (#222376)

After #215402, peelZeroOffsetViews walked through fir.convert that
changes the pointee type (e.g. !fir.ref<complex<T>> → !fir.ref<T>).
Load/store then indexed the parent array and converted the value, which
is wrong for Fortran storage association: it fails verification
(memref.store / illegal fir.convert) or silently changes bits (sitofp /
fpext).

Stop peeling when the accessed element type changes. Marshal the typed
view as a rank-0 memref of the dummy type. Same-type wrappers
(fir.declare, ref<T> → ref<T>) still peel to fir.array_coor.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list