[llvm] c469f57 - [RISCV] Remove fimmneg0 patterns that were replaced by D142953.

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Sat Feb 4 16:36:00 PST 2023


Author: Craig Topper
Date: 2023-02-04T16:26:17-08:00
New Revision: c469f57124ae176aa439c5b15e49f8d170826ac4

URL: https://github.com/llvm/llvm-project/commit/c469f57124ae176aa439c5b15e49f8d170826ac4
DIFF: https://github.com/llvm/llvm-project/commit/c469f57124ae176aa439c5b15e49f8d170826ac4.diff

LOG: [RISCV] Remove fimmneg0 patterns that were replaced by D142953.

Added: 
    

Modified: 
    llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/RISCV/RISCVInstrInfoF.td b/llvm/lib/Target/RISCV/RISCVInstrInfoF.td
index fe0d5a4306734..966e4cfaf129b 100644
--- a/llvm/lib/Target/RISCV/RISCVInstrInfoF.td
+++ b/llvm/lib/Target/RISCV/RISCVInstrInfoF.td
@@ -454,7 +454,6 @@ let Predicates = [HasStdExtF] in {
 
 /// Float constants
 def : Pat<(f32 (fpimm0)), (FMV_W_X X0)>;
-def : Pat<(f32 (fpimmneg0)), (FSGNJN_S (FMV_W_X X0), (FMV_W_X X0))>;
 
 /// Float conversion operations
 

diff  --git a/llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td b/llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
index 82c65667db98e..28c40a6b31c8b 100644
--- a/llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
+++ b/llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
@@ -234,9 +234,6 @@ def : InstAlias<"fge.h $rd, $rs, $rt",
 
 let Predicates = [HasStdExtZfh] in {
 
-// Floating point constant -0.0
-def : Pat<(f16 (fpimmneg0)), (FSGNJN_H (FMV_H_X X0), (FMV_H_X X0))>;
-
 /// Float conversion operations
 
 // [u]int32<->float conversion patterns must be gated on IsRV32 or IsRV64, so
@@ -408,11 +405,6 @@ def : Pat<(fcopysign FPR16:$rs1, FPR64:$rs2),
 def : Pat<(fcopysign FPR64:$rs1, FPR16:$rs2), (FSGNJ_D $rs1, (FCVT_D_H $rs2))>;
 } // Predicates = [HasStdExtZfhOrZfhmin, HasStdExtD]
 
-let Predicates = [HasStdExtZfhmin, NoStdExtZfh] in {
-// Floating point constant -0.0
-def : Pat<(f16 (fpimmneg0)), (FCVT_H_S (FSGNJN_S (FMV_W_X X0), (FMV_W_X X0)), 0b111)>;
-} // Predicates = [HasStdExtZfhmin, NoStdExtZfh]
-
 let Predicates = [HasStdExtZfhmin, NoStdExtZfh, IsRV32] in {
 // half->[u]int. Round-to-zero must be used.
 def : Pat<(i32 (any_fp_to_sint FPR16:$rs1)), (FCVT_W_S (FCVT_S_H $rs1), 0b001)>;


        


More information about the llvm-commits mailing list