mips va_arg question

Dave Korn dk@artimi.com
Thu Aug 12 12:52:00 GMT 2004


> -----Original Message-----
> From: gcc-owner On Behalf Of Richard Sandiford
> Sent: 12 August 2004 13:34
> To: Mile Davidovic
> 
> Mile Davidovic writes:
> > Passing of double to function with variable number of
> > arguments is over stack, and va_arg inside of function
> > with variable number of arguments suppose that sp
> > could be divided by 8.
> 
> Yes.  The ABIs say that sp must be divisible by 8[*].  If it isn't
> for you then something is very wrong.  Where's the misaligned sp
> coming from?

  From his own inline asm.  That doesn't even mention sp in the clobber
list. 

> -----Original Message-----
> From: gcc-owner On Behalf Of Mile Davidovic
> Sent: 12 August 2004 12:02

> Here is small sample:
>   test(1, 2, 3, 4.56,5,6);  
>   asm("addiu $29, $29, -4"); // SP isn't multiple of 8
>   test(1, 2, 3, 4.56,5,6);  

  Poor little compiler, that's such a mean and nasty trick to play on it!

    cheers, 
      DaveK
-- 
Can't think of a witty .sigline today....



More information about the Gcc mailing list