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] | |
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] |