Re: 32bit Calling conventions on linux/ppc.

2006-12-12 Thread Dale Johannesen
On Dec 12, 2006, at 12:07 PM, David Edelsohn wrote: Dale Johannesen writes: Dale> It may have been intended to allow the callee to be a K&R- style or Dale> varargs function, where all float args get promoted to double. Dale> In particular, printf was often called without being declared in

Re: 32bit Calling conventions on linux/ppc.

2006-12-12 Thread David Edelsohn
> Dale Johannesen writes: Dale> It may have been intended to allow the callee to be a K&R-style or Dale> varargs function, where all float args get promoted to double. Dale> In particular, printf was often called without being declared in K&R- Dale> era code. This is one way to make that c

Re: 32bit Calling conventions on linux/ppc.

2006-12-12 Thread Dale Johannesen
On Dec 12, 2006, at 11:42 AM, David Edelsohn wrote: Joslwah writes: Joslwah> Looking at the Linux 32bit PowerPC ABI spec, it appears to me that Joslwah> floats in excess of those that are passed in registers are supposed to Joslwah> be promoted to doubles and passed on the stack. Examin

Re: 32bit Calling conventions on linux/ppc.

2006-12-12 Thread David Edelsohn
> Joslwah writes: Joslwah> Looking at the Linux 32bit PowerPC ABI spec, it appears to me that Joslwah> floats in excess of those that are passed in registers are supposed to Joslwah> be promoted to doubles and passed on the stack. Examing the resulting Joslwah> stack from a gcc generated C c

Re: 32bit Calling conventions on linux/ppc.

2006-11-24 Thread David Edelsohn
> Joslwah writes: Joslwah> Looking at the Linux 32bit PowerPC ABI spec, it appears to me that Joslwah> floats in excess of those that are passed in registers are supposed to Joslwah> be promoted to doubles and passed on the stack. Examing the resulting Joslwah> stack from a gcc generated C c

32bit Calling conventions on linux/ppc.

2006-11-16 Thread Joslwah
Looking at the Linux 32bit PowerPC ABI spec, it appears to me that floats in excess of those that are passed in registers are supposed to be promoted to doubles and passed on the stack. Examing the resulting stack from a gcc generated C call it appears they are passed as floats. Can someone co