<div dir="ltr">Hi Anton,<div><br></div><div>From my perspective Win32 is the windows ABI and mingw and cygwin are their own</div><div>ABIs especially as we're not targeting the MSVC abi, it's just the windows abi?</div>
<div><br></div><div>-eric<br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Mar 27, 2013 at 1:32 PM, Anton Korobeynikov <span dir="ltr"><<a href="mailto:asl@math.spbu.ru" target="_blank">asl@math.spbu.ru</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Timur,<br>
<br>
I myself find the name "Win32" pretty confusing and easy to misuse<br>
(especially for someone who assumes that windows == msvc). After all<br>
mingw and cygwin is also win32. Maybe we should rename it into<br>
isTargetMSVC or something like this?<br>
<div><div class="h5"><br>
On Wed, Mar 27, 2013 at 6:26 AM, Timur Iskhodzhanov <<a href="mailto:timurrrr@google.com">timurrrr@google.com</a>> wrote:<br>
> Anton,<br>
><br>
> What do you think?<br>
><br>
> 2013/3/20 Eric Christopher <<a href="mailto:echristo@gmail.com">echristo@gmail.com</a>>:<br>
>><br>
>><br>
>><br>
>> On Wed, Mar 20, 2013 at 5:21 PM, Timur Iskhodzhanov <<a href="mailto:timurrrr@google.com">timurrrr@google.com</a>><br>
>> wrote:<br>
>>><br>
>>> 2013/3/20 Timur Iskhodzhanov <<a href="mailto:timurrrr@google.com">timurrrr@google.com</a>>:<br>
>>> > Anton,<br>
>>> ><br>
>>> > [+Eric, Nick,<br>
>>> > the e-mail thread context has been broken a few times, so you should<br>
>>> > probably look at the llvmdev archives.<br>
>>> > It all starts here:<br>
>>> > <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-October/053961.html" target="_blank">http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-October/053961.html</a> ]<br>
>>> ><br>
>>> > So I've decided to make a new attempt to fix this issue.<br>
>>> ><br>
>>> > We've discussed my patches with Eric and came up with the following<br>
>>> > idea:<br>
>>> > a) IsTargetWindows should be true for all the targets that execute on<br>
>>> > the Windows kernel, including Cygwin, MinGW and MSVC ABIs.<br>
>>> ><br>
>>> > However, "Windows 32-bit ABI" usually implies "MSVC 32-bit ABI", so<br>
>>> > it's Cygwin and MinGW (that are similar more similar to Itanium ABI<br>
>>> > than to MSVC ABI) that should be exceptions from the general Win32<br>
>>> > handling code.<br>
>>> ><br>
>>> > That is,<br>
>>> > b) We should add a IsTargetWin32 which is true if the MSVC 32-bit ABI<br>
>>> > is used and false for Cygwin+MinGW.<br>
>>> FTR, there's already such a method but it is (mis?)used only in<br>
>>> lib/Target/X86/X86FrameLowering.cpp for segmented stacks.<br>
>>> Are segmented stacks actually used with MSVC or is it just the<br>
>>> conditions there should use isTargetMingw() && !is64Bit() instead?<br>
><br>
> Attached is a patch that makes the proposed change to isTargetWin32<br>
> and also fixes all the previous uses of isTargetWin32.<br>
> Can you please review it?<br>
><br>
> --<br>
> Thanks,<br>
> Timur<br>
><br>
>> cc'ing graydon about segmented stacks because I know rust uses them.<br>
>><br>
>> -eric<br>
>><br>
><br>
</div></div>> _______________________________________________<br>
> cfe-dev mailing list<br>
> <a href="mailto:cfe-dev@cs.uiuc.edu">cfe-dev@cs.uiuc.edu</a><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a><br>
><br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
--<br>
With best regards, Anton Korobeynikov<br>
Faculty of Mathematics and Mechanics, Saint Petersburg State University<br>
</font></span></blockquote></div><br></div></div></div>