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]

Still problems with alloca and frame layout on w64 targets


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?

Thanks in advance,
Kai



|  (\_/)  This is Bunny. Copy and paste Bunny
| (='.'=) into your signature to help him gain
| (")_(") world domination.

Attachment: test.c
Description: Binary data


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