diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/sparc/sparc.c | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f98e134..cf8e4e7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2011-05-24 Eric Botcazou <ebotcazou@adacore.com> + * config/sparc/sparc.c (sparc_option_override): If not set by the user, + force flag_ira_share_save_slots to 0. + +2011-05-24 Eric Botcazou <ebotcazou@adacore.com> + * var-tracking.c (compute_cfa_pointer): Adjust head comment. (vt_initialize): Set PROLOGUE_BB unconditionally. Add block comment about CFA_BASE_RTX machinery. diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c index bd7d12a..634e44d 100644 --- a/gcc/config/sparc/sparc.c +++ b/gcc/config/sparc/sparc.c @@ -933,6 +933,12 @@ sparc_option_override (void) ? 64 : 32), global_options.x_param_values, global_options_set.x_param_values); + + /* Disable save slot sharing for call-clobbered registers by default. + The IRA sharing algorithm works on single registers only and this + pessimizes for double floating-point registers. */ + if (!global_options_set.x_flag_ira_share_save_slots) + flag_ira_share_save_slots = 0; } /* Miscellaneous utilities. */ |