aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/decl.c
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2021-09-13 22:35:18 -0400
committerJason Merrill <jason@redhat.com>2021-09-13 23:16:39 -0400
commit22abfa3166c9af1a2a24fae8a2e5d45f4bc6950d (patch)
treedde92a6a1bc4e830851fa0d483cb1a5a35a4c952 /gcc/cp/decl.c
parent07985c47dc79d90cea33dcd9f84ec288ab5df261 (diff)
downloadgcc-22abfa3166c9af1a2a24fae8a2e5d45f4bc6950d.zip
gcc-22abfa3166c9af1a2a24fae8a2e5d45f4bc6950d.tar.gz
gcc-22abfa3166c9af1a2a24fae8a2e5d45f4bc6950d.tar.bz2
c++: Fix warning on 32-bit x86
My C++17 hardware interference sizes patch caused a bogus warning on 32-bit x86, where we have a default L1 cache line size of 0, and the front end complained that the default constructive interference size of 64 was larger than that. gcc/cp/ChangeLog: * decl.c (cxx_init_decl_processing): Don't warn if L1 cache line size is smaller than maxalign.
Diffstat (limited to 'gcc/cp/decl.c')
-rw-r--r--gcc/cp/decl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index c206502..930531a 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -4776,7 +4776,8 @@ cxx_init_decl_processing (void)
if (param_construct_interfere_size < max_align)
error ("%<--param constructive-interference-size=%d%> is less than "
"%d", param_construct_interfere_size, max_align);
- else if (param_construct_interfere_size > param_l1_cache_line_size)
+ else if (param_construct_interfere_size > param_l1_cache_line_size
+ && param_l1_cache_line_size >= max_align)
warning (OPT_Winterference_size,
"%<--param constructive-interference-size=%d%> "
"is greater than %<--param l1-cache-line-size=%d%>",