This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: mips va_arg question


> -----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....


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]