This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: stdcall lib functions with exception throwing callbacks vs Dwarf2EH
Richard Henderson wrote:
> I reproduced this specific failure on linux, and the following seems
> to fix the problem. Can you give it a go with whatever more complex
> test case you have?
>
>
> r~
>
>
> * dwarf2out.c (dwarf2out_stack_adjust): Add after_p argument. Save
> args_size adjustments for calls even with cfa as stack pointer.
> Search calls for stack adjustments after the insn is issued.
> (dwarf2out_frame_debug): Add after_p argument; pass it on.
> * dwarf2out.h (dwarf2out_frame_debug): Update to match.
> * final.c (final_start_function, final_scan_insn): Likewise.
>
Yes it fixes the stdcall testcases.
Out of curiosity I checked to see if it affected
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=6764
which, although closed, has been on-again/off-again with DW2 on windows.
The -mno-accumulate-outgoing-args -fomit-frame-pointer combination
results in abnormal termination with (and without) your patch and the
testcase
in that PR.
Danny