[llvm] 7fd7d48 - [LoongArch] Categorize code by function. NFC.
via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 13 18:50:09 PDT 2022
Author: gonglingqin
Date: 2022-09-14T09:48:26+08:00
New Revision: 7fd7d48b4b3a40db62e26f289434865c432c6202
URL: https://github.com/llvm/llvm-project/commit/7fd7d48b4b3a40db62e26f289434865c432c6202
DIFF: https://github.com/llvm/llvm-project/commit/7fd7d48b4b3a40db62e26f289434865c432c6202.diff
LOG: [LoongArch] Categorize code by function. NFC.
Differential Revision: https://reviews.llvm.org/D133754
Added:
Modified:
llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
Removed:
################################################################################
diff --git a/llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td b/llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
index 9832c8877facf..145da1423deed 100644
--- a/llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
+++ b/llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
@@ -263,8 +263,16 @@ let Predicates = [HasBasicD, IsLA64] in {
def : Pat<(f64 fpimm0), (MOVGR2FR_D R0)>;
def : Pat<(f64 fpimm0neg), (FNEG_D (MOVGR2FR_D R0))>;
def : Pat<(f64 fpimm1), (FFINT_D_L (MOVGR2FR_D (ADDI_D R0, 1)))>;
+} // Predicates = [HasBasicD, IsLA64]
+let Predicates = [HasBasicD, IsLA32] in {
+def : Pat<(f64 fpimm0), (MOVGR2FRH_W (MOVGR2FR_W_64 R0), R0)>;
+def : Pat<(f64 fpimm0neg), (FNEG_D (MOVGR2FRH_W (MOVGR2FR_W_64 R0), R0))>;
+def : Pat<(f64 fpimm1), (FCVT_D_S (FFINT_S_W (MOVGR2FR_W (ADDI_W R0, 1))))>;
+} // Predicates = [HasBasicD, IsLA32]
-// Convert int to FP
+/// Convert int to FP
+
+let Predicates = [HasBasicD, IsLA64] in {
def : Pat<(f64 (sint_to_fp (i64 (sexti32 (i64 GPR:$src))))),
(FFINT_D_W (MOVGR2FR_W GPR:$src))>;
def : Pat<(f64 (sint_to_fp GPR:$src)), (FFINT_D_L (MOVGR2FR_D GPR:$src))>;
@@ -273,8 +281,13 @@ def : Pat<(f64 (uint_to_fp (i64 (zexti32 (i64 GPR:$src))))),
(FFINT_D_W (MOVGR2FR_W GPR:$src))>;
def : Pat<(bitconvert GPR:$src), (MOVGR2FR_D GPR:$src)>;
+} // Predicates = [HasBasicD, IsLA64]
+let Predicates = [HasBasicD, IsLA32] in {
+def : Pat<(f64 (sint_to_fp (i32 GPR:$src))), (FFINT_D_W (MOVGR2FR_W GPR:$src))>;
+} // Predicates = [HasBasicD, IsLA32]
// Convert FP to int
+let Predicates = [HasBasicD, IsLA64] in {
def : Pat<(bitconvert FPR64:$src), (MOVFR2GR_D FPR64:$src)>;
} // Predicates = [HasBasicD, IsLA64]
@@ -282,12 +295,3 @@ def : Pat<(bitconvert FPR64:$src), (MOVFR2GR_D FPR64:$src)>;
let Predicates = [HasBasicD, IsLA64] in {
def : PatFpr<frint, FRINT_D, FPR64>;
} // Predicates = [HasBasicD, IsLA64]
-
-let Predicates = [HasBasicD, IsLA32] in {
-def : Pat<(f64 fpimm0), (MOVGR2FRH_W (MOVGR2FR_W_64 R0), R0)>;
-def : Pat<(f64 fpimm0neg), (FNEG_D (MOVGR2FRH_W (MOVGR2FR_W_64 R0), R0))>;
-def : Pat<(f64 fpimm1), (FCVT_D_S (FFINT_S_W (MOVGR2FR_W (ADDI_W R0, 1))))>;
-
-// Convert int to FP
-def : Pat<(f64 (sint_to_fp (i32 GPR:$src))), (FFINT_D_W (MOVGR2FR_W GPR:$src))>;
-} // Predicates = [HasBasicD, IsLA32]
More information about the llvm-commits
mailing list