[RISCV] Fix crash splatting f64 -0.0 into a vector on RV32 after D142953.
authorCraig Topper <craig.topper@sifive.com>
Sat, 4 Feb 2023 21:35:58 +0000 (13:35 -0800)
committerCraig Topper <craig.topper@sifive.com>
Sun, 5 Feb 2023 00:34:06 +0000 (16:34 -0800)
commit712e143883d694d3b5817dae714da2315eae8c89
treed6e6b5cc3eff4c5371f0953ce2f765df4f055447
parentfe6dd5d3115987622907f7541314a2fe163eb57b
[RISCV] Fix crash splatting f64 -0.0 into a vector on RV32 after D142953.

For RV32, we now use scalar fcvt of x0, scalar fneg, splat scalar fp to vector.
For RV64, we use li of 1, slli by 63, splat GPR to vector.
llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-splat.ll