https://gcc.gnu.org/g:80600352d1282f084900ab444f2d4c83986f2ae5

commit r14-10253-g80600352d1282f084900ab444f2d4c83986f2ae5
Author: Haochen Jiang <haochen.ji...@intel.com>
Date:   Wed May 29 11:12:37 2024 +0800

    Adjust generic loop alignment from 16:11:8 to 16 for Intel processors
    
    Previously, we use 16:11:8 in generic tune for Intel processors, which
    lead to cross cache line issue and result in some random performance
    penalty in benchmarks with small loops commit to commit.
    
    After changing to always aligning to 16 bytes, it will somehow solve
    the issue.
    
    gcc/ChangeLog:
    
            * config/i386/x86-tune-costs.h (generic_cost): Change from
            16:11:8 to 16.

Diff:
---
 gcc/config/i386/x86-tune-costs.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/config/i386/x86-tune-costs.h b/gcc/config/i386/x86-tune-costs.h
index 65d7d1f7e42..d3aaaa4b5cc 100644
--- a/gcc/config/i386/x86-tune-costs.h
+++ b/gcc/config/i386/x86-tune-costs.h
@@ -3758,7 +3758,7 @@ struct processor_costs generic_cost = {
   generic_memset,
   COSTS_N_INSNS (4),                   /* cond_taken_branch_cost.  */
   COSTS_N_INSNS (2),                   /* cond_not_taken_branch_cost.  */
-  "16:11:8",                           /* Loop alignment.  */
+  "16",                                        /* Loop alignment.  */
   "16:11:8",                           /* Jump alignment.  */
   "0:0:8",                             /* Label alignment.  */
   "16",                                        /* Func alignment.  */

Reply via email to