From: Xi Ruoyao <xry111@xry111.site>
To: gcc-patches@gcc.gnu.org
Cc: Lulu Cheng <chenglulu@loongson.cn>, Wang Xuerui <i@xen0n.name>,
Chenghua Xu <xuchenghua@loongson.cn>,
Xi Ruoyao <xry111@xry111.site>
Subject: [PATCH] LoongArch: Pass cache information to optimizer
Date: Mon, 26 Sep 2022 14:58:05 +0800 [thread overview]
Message-ID: <20220926065805.15717-1-xry111@xry111.site> (raw)
Currently our cache information from -mtune is not really used, pass it
to the optimizer so it will be really in-effect.
gcc/ChangeLog:
* config/loongarch/loongarch.cc
(loongarch_option_override_internal): Set the corresponding
params for L1D cache line size, L1D cache size, and L2D cache
size.
---
gcc/config/loongarch/loongarch.cc | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/gcc/config/loongarch/loongarch.cc b/gcc/config/loongarch/loongarch.cc
index 98c0e26cdb9..81594cf5b98 100644
--- a/gcc/config/loongarch/loongarch.cc
+++ b/gcc/config/loongarch/loongarch.cc
@@ -63,6 +63,7 @@ along with GCC; see the file COPYING3. If not see
#include "context.h"
#include "builtins.h"
#include "rtl-iter.h"
+#include "opts.h"
/* This file should be included last. */
#include "target-def.h"
@@ -6096,6 +6097,16 @@ loongarch_option_override_internal (struct gcc_options *opts)
if (loongarch_branch_cost == 0)
loongarch_branch_cost = loongarch_cost->branch_cost;
+ const loongarch_cache &tune_cache =
+ loongarch_cpu_cache[la_target.cpu_tune];
+
+ SET_OPTION_IF_UNSET (opts, &global_options_set, param_l1_cache_line_size,
+ tune_cache.l1d_line_size);
+ SET_OPTION_IF_UNSET (opts, &global_options_set, param_l1_cache_size,
+ tune_cache.l1d_size);
+ SET_OPTION_IF_UNSET (opts, &global_options_set, param_l2_cache_size,
+ tune_cache.l2d_size);
+
if (TARGET_DIRECT_EXTERN_ACCESS && flag_shlib)
error ("%qs cannot be used for compiling a shared library",
"-mdirect-extern-access");
--
2.37.0
next reply other threads:[~2022-09-26 6:58 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-26 6:58 Xi Ruoyao [this message]
2022-09-26 7:04 ` Lulu Cheng
2022-09-27 3:16 ` Xi Ruoyao
2022-09-27 3:54 ` Lulu Cheng
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220926065805.15717-1-xry111@xry111.site \
--to=xry111@xry111.site \
--cc=chenglulu@loongson.cn \
--cc=gcc-patches@gcc.gnu.org \
--cc=i@xen0n.name \
--cc=xuchenghua@loongson.cn \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).