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.
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%>",