Re: x86_64 and stack alignment

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2010-01-12 at 00:02 +0300, Dan Kruchinin wrote:
> Hi, list.
> 
> Are there any gcc-specific rules about stack alignment on x86_64?
> I reached quite strange behavior of my program when it passes some float to a function that accepts variable length arguments list
> and %rsp contains aligned on 16 bytes boundary address.
> 

Does your code follow

"When a function taking variable-arguments is called, %rax must be set
to the total number of floating point parameters passed to the function
in SSE registers."

from section 3.5.7 of the ABI? The default in 64-bit mode is to use the
SSE registers for passing floating point arguments.

--Bob




[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux