On Fri, 14 Nov 2014, Radovan Obradovic wrote:
> index eb37bfe..ddaf8e0 100644
> --- a/gcc/toplev.c
> +++ b/gcc/toplev.c

> @@ -1605,6 +1612,11 @@ process_options (void)
>    /* Save the current optimization options.  */
>    optimization_default_node = build_optimization_node (&global_options);
>    optimization_current_node = optimization_default_node;
> +
> +  /* Disable use caller save optimization if profiler is active or port
> +     does not emit prologue and epilogue as RTL.  */
> +  if (profile_flag || !HAVE_prologue || !HAVE_epilogue)
> +    flag_use_caller_save = 0;
>  }

This seems wrong.  Why disable caller-save regardless of
profile_flag; is there some long-standing bug in caller-save for
"old" targets?  I guess you want:

> +  if (profile_flag && (!HAVE_prologue || !HAVE_epilogue))


Not that it matter too much, I don't think we care about such
targets.  I don't even bother to grep if there is any. :)

brgds, H-P

Reply via email to