r217790 - Add -fseh-exceptions for MinGW-w64

Yaron Keren yaron.keren at gmail.com
Thu Nov 13 21:28:23 PST 2014


Using SEH as the default on x86_64 makes sense, it is 10x more popular than
SJLJ with mingw-w64

https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.9.2/threads-win32/

Thanks!

2014-11-14 4:07 GMT+02:00 Reid Kleckner <rnk at google.com>:

> I finally went ahead and removed -fseh-exceptions and made that behavior
> the default on x86_64-*-windows-* in r221963. Eventually I intend to change
> the EH personality functions for *-*-windows-msvc, but that shouldn't
> affect mingw64. OK with you?
>
> On Wed, Sep 17, 2014 at 9:05 PM, Yaron Keren <yaron.keren at gmail.com>
> wrote:
>
>> I have not seen any MinGW distribution using DWARF exceptions on x64.
>> They all use SEH or SJLJ.
>> SEH should be the default unless  -fsjlj-exceptions.
>>
>> Yaron
>>
>>
>> 2014-09-18 4:08 GMT+03:00 Reid Kleckner <rnk at google.com>:
>>
>>> On further reflection, I think the nomenclature here is wrong. We need
>>> to try harder to disambiguate two concepts of SEH: the __try / __except
>>> constructs, and the Windows unwind and exception info format on x64, arm,
>>> and probably ppc. In LLVM MC, we currently use the terminology WinCFI and
>>> WinEH to refer to essentially the stuff in .pdata and .xdata respectively.
>>>
>>> -fseh-exceptions and LangOpts.SEHExceptions are poorly named because the
>>> reader might assume that they enable an implementation of __try / __except,
>>> which is incorrect. Can you help me come up with a less confusing name? My
>>> strawmen are:
>>> -fpdata-exceptions / PDataExceptions
>>> -fxdata-exceptions / XDataExceptions
>>> -fwin-eh-exceptions / WinEHExceptions
>>> -fwin-cfi-exceptions / WinCFIExceptions
>>>
>>> These names are meant to stand as alternative to -fsjlj-exceptions and
>>> dwarf cfi, the default.
>>>
>>> Alternatively, is this option even useful? Would you be OK with
>>> completely removing this option in favor of only supporting .pdata
>>> exceptions and sjlj exceptions on mingw64 x64? I noticed that the
>>> mingwbuilds installer doesn't even present dwarf exceptions as an option
>>> anymore (did it ever?).
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20141114/83c9af35/attachment.html>


More information about the cfe-commits mailing list