http://bugs.winehq.org/show_bug.cgi?id=19055
--- Comment #7 from Anastasius Focht focht@gmx.net 2009-06-24 17:47:55 --- Hello,
--- quote --- Does this make any difference? --- quote ---
yes, the emitted CFI helps libgcc's unwinder, preventing the segfault. I should have looked at gcc -S output of signal_i386.c to see gcc's emitted CFI of other functions ;-)
Maybe libgcc's unwinder just relied on the fact if there is any CFI present (call_thread_func: .cfi_startproc and .cfi_endproc) it will be complete CFI. Normally it would be the case if gcc's CFI generator produced the code.
The Wine packagers of Distros using gcc 4.4+ for building Wine 1.1.24 should be notified to include your patch.
Regards
--- Comment #8 from Marcus Meissner marcus@jet.franken.de 2009-06-25 08:47:27 --- btw,
bisecting converged on commit f124c7cc38e7edf0823347afa5f8e7126143080d Author: Alexandre Julliard julliard@winehq.org Date: Thu Jun 18 16:38:30 2009 +0200
ntdll: Simplify the thread startup routine and make it CPU-specific.