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]

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



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