Hi,
this patch fixes register allocation issue in spec2006 lbm benchmark improving 
it by
about 13%.

Bootstrapped/regtested x86_64-linux, will commit it soon.

Honza

        * x86-tune-costs.h (generic_cost): Increase cost of integer load to 
match
        other memory operations.
diff --git a/gcc/config/i386/x86-tune-costs.h b/gcc/config/i386/x86-tune-costs.h
index eff7f7f6bbf..4f1795ad8d3 100644
--- a/gcc/config/i386/x86-tune-costs.h
+++ b/gcc/config/i386/x86-tune-costs.h
@@ -2259,8 +2260,8 @@ struct processor_costs generic_cost = {
 
   /* All move costs are relative to integer->integer move times 2 and thus
      they are latency*2. */
-  4,                                /* cost for loading QImode using movzbl */
-  {4, 4, 4},                           /* cost of loading integer registers
+  6,                                /* cost for loading QImode using movzbl */
+  {6, 6, 6},                           /* cost of loading integer registers
                                           in QImode, HImode and SImode.
                                           Relative to reg-reg move (2).  */
   {6, 6, 6},                           /* cost of storing integer registers */

Reply via email to