Re: question about REG_PARM_STACK_SPACE usage in expand_call

2013-12-16 Thread Jeff Law
On 12/14/13 13:14, Tom de Vries wrote: I wonder if OUTGOING_REG_PARM_STACK_SPACE makes a difference here. If I'm reading the archives correctly is the caller/callee may have different ABIs (by way of sysv/ms_abi attributes). Presumably there's some magic to deal with the differences in the ABI

Re: question about REG_PARM_STACK_SPACE usage in expand_call

2013-12-14 Thread Tom de Vries
On 15-12-13 04:37, Alan Modra wrote: On Sat, Dec 14, 2013 at 09:14:34PM +0100, Tom de Vries wrote: I wonder if OUTGOING_REG_PARM_STACK_SPACE makes a difference here. If OUTGOING_REG_PARM_STACK_SPACE == 0, it is the responsibility of the callee to allocate the area reserved for arguments passed

Re: question about REG_PARM_STACK_SPACE usage in expand_call

2013-12-14 Thread Alan Modra
On Sat, Dec 14, 2013 at 09:14:34PM +0100, Tom de Vries wrote: > I wonder if OUTGOING_REG_PARM_STACK_SPACE makes a difference here. > > If OUTGOING_REG_PARM_STACK_SPACE == 0, it is the responsibility of > the callee to allocate the area reserved for arguments passed in > registers. AFAIU, both func

Re: question about REG_PARM_STACK_SPACE usage in expand_call

2013-12-14 Thread Tom de Vries
On 13-12-13 06:43, Jeff Law wrote: Was this meant perhaps? ... || (reg_parm_stack_space != REG_PARM_STACK_SPACE (current_function_decl)) I think you're probably right. sibcall/tailcall basically re-use the current function's stack Jeff, Right, say we have function a tail-calling funct