This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch i386 mingw]: Disallow DW2 unwind for 64-bit and multilib
- From: Kai Tietz <ktietz70 at googlemail dot com>
- To: Dave Korn <dave dot korn dot cygwin at googlemail dot com>
- Cc: Jason Merrill <jason at redhat dot com>, Arnaud Charlet <charlet at adacore dot com>, Kai Tietz <Kai dot Tietz at onevision dot com>, gcc-patches at gcc dot gnu dot org, Danny Smith <dansmister at gmail dot com>
- Date: Tue, 25 Aug 2009 18:10:44 +0200
- Subject: Re: [patch i386 mingw]: Disallow DW2 unwind for 64-bit and multilib
- References: <OF3CA70618.D31850D1-ONC12575FD.0029540F-C12575FD.002A43EA@onevision.de> <20090724074444.GA89302@adacore.com> <90baa01f0907240055k1be7900cjb9900c893ba52faf@mail.gmail.com> <4A93FED9.70303@redhat.com> <90baa01f0908250850y2853af7boc22aa293a9687b6@mail.gmail.com> <4A940E44.6090601@gmail.com>
2009/8/25 Dave Korn <dave.korn.cygwin@googlemail.com>:
> Kai Tietz wrote:
>> 2009/8/25 Jason Merrill <jason@redhat.com>:
>>> On 07/24/2009 03:55 AM, Kai Tietz wrote:
>>>> 2009/7/24 Arnaud Charlet<charlet@adacore.com>:
>>>>> BTW, do you know how hard it would be to get dwarf2 unwind based
>>>>> exceptions
>>>>> working on 64 bit windows? What are the missing/blocking points?
>>>> The major issue is that the current implementation is using code
>>>> analysis for finding frame information. This is for x64 even harder
>>>> then for x86 as there much more possibilities of prologue entries.
>>> How is this different from other x86_64 targets?
>>>
>>> Jason
>>>
>>
>> Well, see for this /gcc/config/i386/mingw32.h file
>> (MD_UNWIND_SUPPORT), and the header included here for dw2 based
>> unwinding, and you will see that this can't be used for 64-bit, for
>> sure (config/i386/w32-unwind.h).
>
> ?Hopefully your new .pdata support in gas is going to help with that, isn't it?
>
> ? ?cheers,
> ? ? ?DaveK
>
Yes, the seh support for x64 windows can help here. As then the
unwinding can be done by the pdata/xdata information.
Cheers,
Kai
--
| (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination