gcc/LoongArch-Change-the-default-value-of-LARCH_CALL_RAT.patch

42 lines
1.6 KiB
Diff
Raw Permalink Normal View History

From 59824f1062d77d0e02ea82d47415bf95c235de87 Mon Sep 17 00:00:00 2001
From: chenxiaolong <chenxl04200420@163.com>
Date: Thu, 15 Jun 2023 02:46:24 +0000
Subject: [PATCH 046/124] LoongArch: Change the default value of
LARCH_CALL_RATIO to 6.
During the regression testing of the LoongArch architecture GCC, it was found
that the tests in the pr90883.C file failed. The problem was modulated and
found that the error was caused by setting the macro LARCH_CALL_RATIO to a too
large value. Combined with the actual LoongArch architecture, the different
thresholds for meeting the test conditions were tested using the engineering method
(SPEC CPU 2006), and the results showed that its optimal threshold should be set
to 6.
gcc/ChangeLog:
* config/loongarch/loongarch.h (LARCH_CALL_RATIO): Modify the value
of macro LARCH_CALL_RATIO on LoongArch to make it perform optimally.
Signed-off-by: Peng Fan <fanpeng@loongson.cn>
Signed-off-by: ticat_fp <fanpeng@loongson.cn>
---
gcc/config/loongarch/loongarch.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/config/loongarch/loongarch.h b/gcc/config/loongarch/loongarch.h
index 44ebadfaa..0e35d4dec 100644
--- a/gcc/config/loongarch/loongarch.h
+++ b/gcc/config/loongarch/loongarch.h
@@ -1073,7 +1073,7 @@ typedef struct {
/* The base cost of a memcpy call, for MOVE_RATIO and friends. These
values were determined experimentally by benchmarking with CSiBE.
*/
-#define LARCH_CALL_RATIO 8
+#define LARCH_CALL_RATIO 6
/* Any loop-based implementation of cpymemsi will have at least
LARCH_MAX_MOVE_OPS_PER_LOOP_ITER memory-to-memory
--
2.33.0