[all-commits] [llvm/llvm-project] 14229d: [MIPS] int <-> `half` conversions with `+msa` (#20...

Folkert de Vries via All-commits all-commits at lists.llvm.org
Wed Jun 10 01:54:57 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 14229de6dfe069ff781b47d3757854f561d79f59
      https://github.com/llvm/llvm-project/commit/14229de6dfe069ff781b47d3757854f561d79f59
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-06-10 (Wed, 10 Jun 2026)

  Changed paths:
    M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
    M llvm/lib/Target/Mips/MipsSEISelLowering.h
    M llvm/test/CodeGen/Mips/msa/f16-llvm-ir.ll

  Log Message:
  -----------
  [MIPS] int <-> `half` conversions with `+msa` (#201897)

Currently these conversions hit an instruction selection failure
https://godbolt.org/z/5YK4T71Wf. The backend marks most operations on
`f16` as `Promote`, but these conversions were (I assume) forgotten.

I've modeled this based on the implementation for s390x, because like
MIPS the `f16` type is storage-only there: you can pass it around etc.
but actual operations are done via promotion to `f32` or `f64`.


https://github.com/llvm/llvm-project/blob/a4e48b5d1a5dc7af00c4adb4076145afd9846739/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp#L7027-L7091



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