On Wed, Jun 25, 2003 at 01:56:54PM -0700, Brad Boyer wrote: > On Wed, Jun 25, 2003 at 05:02:40PM +0000, paubert wrote: > > It is specified in the ABI for functions with variable number of argumentsi: > > the crxor indicates that no parameters have been passed in the floating > > point > > registers so an integer only task will not save fpr1-fpr8 to walk the > > argument list in va_arg. OTOH if you call a variadic functions with > > floating point parameters, the call will be preceded by creqv 6,6,6. > > Do you actually have a document for the official ABI? I found a link > to a document in some old messages, but it was a dead link. A generic > search of the web didn't turn up anything, although I might have > been searching for the wrong words...
I believe it's still somewhere on the net, Google is your friend, the keyword is sysv_abi. > > I've been trying to piece it together based on gcc, but that's > kind of a clumsy way to figure it out. Indeed, good luck trying to understand GCC's parameter passing code. Especially for varargs since I believe the 32 bit PPC is by far the most complex. Gabriel