[llvm] [RISCV] Split f64 loads/stores for RV32+Zdinx during isel instead of post-RA. (PR #139840)
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Wed May 14 10:26:48 PDT 2025
================
@@ -734,38 +734,42 @@ define i64 @fcvt_l_d_sat(double %a) nounwind {
; RV32IZFINXZDINX-NEXT: sw ra, 12(sp) # 4-byte Folded Spill
; RV32IZFINXZDINX-NEXT: sw s0, 8(sp) # 4-byte Folded Spill
; RV32IZFINXZDINX-NEXT: sw s1, 4(sp) # 4-byte Folded Spill
+; RV32IZFINXZDINX-NEXT: sw s2, 0(sp) # 4-byte Folded Spill
+; RV32IZFINXZDINX-NEXT: lui a2, %hi(.LCPI12_0)
+; RV32IZFINXZDINX-NEXT: lw a4, %lo(.LCPI12_0)(a2)
+; RV32IZFINXZDINX-NEXT: addi a2, a2, %lo(.LCPI12_0)
----------------
preames wrote:
This seems like a useful generic optimization as well. I assume you're going to follow up here?
https://github.com/llvm/llvm-project/pull/139840
More information about the llvm-commits
mailing list