[all-commits] [llvm/llvm-project] 8d9207: [RISCV] Use FMV.D for moving GPRPairs on RV32_Zdin...

Sam Elliott via All-commits all-commits at lists.llvm.org
Tue Nov 25 12:04:18 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8d920725ca56930d301df1c7e090905423645a49
      https://github.com/llvm/llvm-project/commit/8d920725ca56930d301df1c7e090905423645a49
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2025-11-25 (Tue, 25 Nov 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/test/CodeGen/RISCV/double-maximum-minimum.ll
    M llvm/test/CodeGen/RISCV/double-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/double-select-icmp.ll
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore-zilsd.ll
    M llvm/test/CodeGen/RISCV/make-compressible-zilsd.mir

  Log Message:
  -----------
  [RISCV] Use FMV.D for moving GPRPairs on RV32_Zdinx (#169556)

This is noted by the specification, and should save a dynamic
instruction.

Code size should be no worse than before, as the pairs of moves can
usually be turned into two 16-bit moves, but `fmv.d` is always a 32-bit
instruction.

LLVM can look through a `FSGNJ_D_IN32X`, in
`RISCVInstrInfo::isCopyInstrImpl` which helps copy propagation.



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