Still problems with alloca and frame layout on w64 targets

Kai Tietz Kai.Tietz@onevision.com
Tue May 27 15:02:00 GMT 2008


> Hi,
> 
> this small c program produces wrong code on x86_64-pc-mingw32. The 
problem 
> here is the call abi w64. For w64 call abi, the last reserved 32 bytes 
on 
> stack are use for vaarg functions to save the incoming arguments from 
> register. This works fine as long as there is no alloca call within the 
> function calling a vaarg method. The alloca reserves just the stack, but 

> does not move the stack clobber region. So by a vaarg call the last 
> reserved stack is clobbered.
> 
> How and where can I solve this problem?

Sorry I attached wrong testcase

Thanks in advance,
Kai



|  (\_/)  This is Bunny. Copy and paste Bunny
| (='.'=) into your signature to help him gain
| (")_(") world domination.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test.c
Type: application/octet-stream
Size: 616 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc/attachments/20080527/bf4a47f2/attachment.obj>


More information about the Gcc mailing list