Ping: always supply a mode to plus_constant

Richard Sandiford
Mon May 14 13:23:00 GMT 2012

Richard Guenther <> writes:
> On Sun, May 6, 2012 at 12:23 AM, H.J. Lu <> wrote:
>> On Thu, May 3, 2012 at 11:15 AM, Richard Sandiford
>> <> wrote:
>>> Ping for this patch to always supply a mode to plus_constant:
>>> I've done a diff of the changes since the original test revision
>>> (which was r186448 FWIW) and there's only been one plus_constant-
>>> related change since then: Alan's rs6000 prologue/epilogue fixes.
>>> I'd repeat the original testing before committing.
>> This caused:
> It also casuses IA64 build to fail for me:
> /gcc/spec/sb-terbium-head-64/gcc/gcc/config/ia64/ia64.c: In function
> 'ia64_emit_probe_stack_range':
> /gcc/spec/sb-terbium-head-64/gcc/gcc/config/ia64/ia64.c:3279: error:
> incompatible type for argument 1 of 'plus_constant'
> /gcc/spec/sb-terbium-head-64/gcc/gcc/config/ia64/ia64.c:3279: warning:
> passing argument 2 of 'plus_constant' makes pointer from integer
> without a cast
> /gcc/spec/sb-terbium-head-64/gcc/gcc/config/ia64/ia64.c:3279: error:
> too few arguments to function 'plus_constant'
> /gcc/spec/sb-terbium-head-64/gcc/gcc/config/ia64/ia64.c:3330: error:
> incompatible type for argument 1 of 'plus_constant'
> ...

I think this was:

2012-05-10  Eric Botcazou  <>
	    Tristan Gingold  <>

	* doc/md.texi (Standard Names): Document probe_stack_address.
	* explow.c (emit_stack_probe): Handle probe_stack_address.
	* config/ia64/ (UNSPECV_PROBE_STACK_ADDRESS): New constant.
	(probe_stack_address): New insn.
	(probe_stack_range): Likewise.
	* config/ia64/ia64.c: Include common/common-target.h.
	(ia64_compute_frame_size): Mark r2 and r3 as used if static stack
	checking is enabled.
	(ia64_emit_probe_stack_range): New function.
	(output_probe_stack_range): Likewise.
	(ia64_expand_prologue): Invoke ia64_emit_probe_stack_range if static
	builtin stack checking is enabled.
	(unknown_for_bundling_p): New predicate.
	(group_barrier_needed): Use important_for_bundling_p.
	(ia64_dfa_new_cycle): Use unknown_for_bundling_p.
	(issue_nops_and_insn): Likewise.
	(bundling): Likewise.
	(final_emit_insn_group_barriers): Likewise.
	* config/ia64/ia64-protos.h (output_probe_stack_range): Declare.
	* config/ia64/hpux.h (STACK_CHECK_STATIC_BUILTIN): Define.
	* config/ia64/linux.h (STACK_CHECK_STATIC_BUILTIN): Likewise.

which went in a few days after my patch.


More information about the Gcc-patches mailing list