[all-commits] [llvm/llvm-project] b4fafe: [flang] Convert unsigned MVBITS TO values before a...

Scott Manley via All-commits all-commits at lists.llvm.org
Thu Sep 24 13:42:09 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b4fafec40e20f1de3b672f5354529063ef8acc74
      https://github.com/llvm/llvm-project/commit/b4fafec40e20f1de3b672f5354529063ef8acc74
  Author: Scott Manley <rscottmanley at gmail.com>
  Date:   2026-09-24 (Thu, 24 Sep 2026)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    A flang/test/Lower/Intrinsics/mvbits-unsigned.f90

  Log Message:
  -----------
  [flang] Convert unsigned MVBITS TO values before arith ops (#226189)

Load TO with its memory type and insert fir.convert to a signless
integer instead of a typed fir.load whose result type does not match the
referent. Mem2Reg otherwise forwards the stored unsigned value into
arith.andi, which only accepts signless integers.

Previously, MVBITS of UNSIGNED lowered TO as:
```
  %to = fir.load %addr : !fir.ref<ui8>   // result type i8
  %and = arith.andi %mask, %to : i8
```
Generic form:
```
  %to = "fir.load"(%addr) : (!fir.ref<ui8>) -> i8
```



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