[prev in list] [next in list] [prev in thread] [next in thread] 

List:       cfe-commits
Subject:    Re: r242574 - basic: default to MSVC on Windows
From:       Saleem Abdulrasool <compnerd () compnerd ! org>
Date:       2015-07-17 23:52:13
Message-ID: CANXyDxtsEpkNs-hHZSGDU=mmoARDo-sQ+SC8whwdBvzfMo4jjw () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Hi Hans,

Would you be so kind as to back port this to the 3.7 branch?  It is a low
risk change and enables the use of non-COFF object files with MS ABI on
Windows.

Thanks!

On Friday, July 17, 2015, Saleem Abdulrasool <compnerd@compnerd.org> wrote:

> Author: compnerd
> Date: Fri Jul 17 16:26:41 2015
> New Revision: 242574
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=242574&view=rev
> Log:
> basic: default to MSVC on Windows
> 
> The "armv7-windows", "i686-windows", and "x86_64-windows" targets should be
> equivalent to the MSVC environment.  This was previously discussed when the
> triples for Windows werw canonicalised.  Im not sure how this was
> overlooked.
> This fixes the emission of non-COFF formats on Windows.
> 
> Thanks to ki9a for reporting this issue over IRC!
> 
> Modified:
> cfe/trunk/lib/Basic/Targets.cpp
> 
> Modified: cfe/trunk/lib/Basic/Targets.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=242574&r1=242573&r2=242574&view=diff
>  
> ==============================================================================
> --- cfe/trunk/lib/Basic/Targets.cpp (original)
> +++ cfe/trunk/lib/Basic/Targets.cpp Fri Jul 17 16:26:41 2015
> @@ -7084,8 +7084,6 @@ static TargetInfo *AllocateTarget(const
> return new NaClTargetInfo<ARMleTargetInfo>(Triple);
> case llvm::Triple::Win32:
> switch (Triple.getEnvironment()) {
> -      default:
> -        return new ARMleTargetInfo(Triple);
> case llvm::Triple::Cygnus:
> return new CygwinARMTargetInfo(Triple);
> case llvm::Triple::GNU:
> @@ -7093,6 +7091,7 @@ static TargetInfo *AllocateTarget(const
> case llvm::Triple::Itanium:
> return new ItaniumWindowsARMleTargetInfo(Triple);
> case llvm::Triple::MSVC:
> +      default: // Assume MSVC for unknown environments
> return new MicrosoftARMleTargetInfo(Triple);
> }
> default:
> @@ -7347,14 +7346,13 @@ static TargetInfo *AllocateTarget(const
> return new SolarisTargetInfo<X86_32TargetInfo>(Triple);
> case llvm::Triple::Win32: {
> switch (Triple.getEnvironment()) {
> -      default:
> -        return new X86_32TargetInfo(Triple);
> case llvm::Triple::Cygnus:
> return new CygwinX86_32TargetInfo(Triple);
> case llvm::Triple::GNU:
> return new MinGWX86_32TargetInfo(Triple);
> case llvm::Triple::Itanium:
> case llvm::Triple::MSVC:
> +      default: // Assume MSVC for unknown environments
> return new MicrosoftX86_32TargetInfo(Triple);
> }
> }
> @@ -7399,11 +7397,10 @@ static TargetInfo *AllocateTarget(const
> return new SolarisTargetInfo<X86_64TargetInfo>(Triple);
> case llvm::Triple::Win32: {
> switch (Triple.getEnvironment()) {
> -      default:
> -        return new X86_64TargetInfo(Triple);
> case llvm::Triple::GNU:
> return new MinGWX86_64TargetInfo(Triple);
> case llvm::Triple::MSVC:
> +      default: // Assume MSVC for unknown environments
> return new MicrosoftX86_64TargetInfo(Triple);
> }
> }
> 
> 
> _______________________________________________
> cfe-commits mailing list
> cfe-commits@cs.uiuc.edu <javascript:;>
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
> 


-- 
Saleem Abdulrasool
compnerd (at) compnerd (dot) org


[Attachment #5 (text/html)]

Hi Hans,<div><br></div><div>Would you be so kind as to back port this to the 3.7 \
branch?   It is a low risk change and enables the use of non-COFF object files with \
MS ABI on Windows.</div><div><br></div><div>Thanks!</div><div><br>On Friday, July 17, \
2015, Saleem Abdulrasool &lt;<a \
href="mailto:compnerd@compnerd.org">compnerd@compnerd.org</a>&gt; \
wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px \
                #ccc solid;padding-left:1ex">Author: compnerd<br>
Date: Fri Jul 17 16:26:41 2015<br>
New Revision: 242574<br>
<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm \
-2Dproject-3Frev-3D242574-26view-3Drev&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=BSqEv9KvKMW \
_Ob8SyngJ70KdZISM_ASROnREeq0cCxk&m=LzW413H1jWOw2Z9ihZNE3fDyB4tERlGBc4TgQKaSLzw&s=gYT549uwGuUYkZM_iDwkh5Aj4kY7z2OKv0nNlcoKN6g&e=" \
target="_blank">http://llvm.org/viewvc/llvm-project?rev=242574&amp;view=rev</a><br> \
                Log:<br>
basic: default to MSVC on Windows<br>
<br>
The &quot;armv7-windows&quot;, &quot;i686-windows&quot;, and \
&quot;x86_64-windows&quot; targets should be<br> equivalent to the MSVC environment.  \
This was previously discussed when the<br> triples for Windows werw canonicalised.   \
Im not sure how this was overlooked.<br> This fixes the emission of non-COFF formats \
on Windows.<br> <br>
Thanks to ki9a for reporting this issue over IRC!<br>
<br>
Modified:<br>
      cfe/trunk/lib/Basic/Targets.cpp<br>
<br>
Modified: cfe/trunk/lib/Basic/Targets.cpp<br>
URL: <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm \
-2Dproject_cfe_trunk_lib_Basic_Targets.cpp-3Frev-3D242574-26r1-3D242573-26r2-3D242574- \
26view-3Ddiff&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=BSqEv9KvKMW_Ob8SyngJ70KdZISM_ASROnRE \
eq0cCxk&m=LzW413H1jWOw2Z9ihZNE3fDyB4tERlGBc4TgQKaSLzw&s=kLuAbo1O67ftzVvucOF1u3_6R4OYRq7J9q-fKsB65y4&e=" \
target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=242574&amp;r1=242573&amp;r2=242574&amp;view=diff</a><br>
 ==============================================================================<br>
--- cfe/trunk/lib/Basic/Targets.cpp (original)<br>
+++ cfe/trunk/lib/Basic/Targets.cpp Fri Jul 17 16:26:41 2015<br>
@@ -7084,8 +7084,6 @@ static TargetInfo *AllocateTarget(const<br>
           return new NaClTargetInfo&lt;ARMleTargetInfo&gt;(Triple);<br>
        case llvm::Triple::Win32:<br>
           switch (Triple.getEnvironment()) {<br>
-         default:<br>
-            return new ARMleTargetInfo(Triple);<br>
           case llvm::Triple::Cygnus:<br>
              return new CygwinARMTargetInfo(Triple);<br>
           case llvm::Triple::GNU:<br>
@@ -7093,6 +7091,7 @@ static TargetInfo *AllocateTarget(const<br>
           case llvm::Triple::Itanium:<br>
              return new ItaniumWindowsARMleTargetInfo(Triple);<br>
           case llvm::Triple::MSVC:<br>
+         default: // Assume MSVC for unknown environments<br>
              return new MicrosoftARMleTargetInfo(Triple);<br>
           }<br>
        default:<br>
@@ -7347,14 +7346,13 @@ static TargetInfo *AllocateTarget(const<br>
           return new SolarisTargetInfo&lt;X86_32TargetInfo&gt;(Triple);<br>
        case llvm::Triple::Win32: {<br>
           switch (Triple.getEnvironment()) {<br>
-         default:<br>
-            return new X86_32TargetInfo(Triple);<br>
           case llvm::Triple::Cygnus:<br>
              return new CygwinX86_32TargetInfo(Triple);<br>
           case llvm::Triple::GNU:<br>
              return new MinGWX86_32TargetInfo(Triple);<br>
           case llvm::Triple::Itanium:<br>
           case llvm::Triple::MSVC:<br>
+         default: // Assume MSVC for unknown environments<br>
              return new MicrosoftX86_32TargetInfo(Triple);<br>
           }<br>
        }<br>
@@ -7399,11 +7397,10 @@ static TargetInfo *AllocateTarget(const<br>
           return new SolarisTargetInfo&lt;X86_64TargetInfo&gt;(Triple);<br>
        case llvm::Triple::Win32: {<br>
           switch (Triple.getEnvironment()) {<br>
-         default:<br>
-            return new X86_64TargetInfo(Triple);<br>
           case llvm::Triple::GNU:<br>
              return new MinGWX86_64TargetInfo(Triple);<br>
           case llvm::Triple::MSVC:<br>
+         default: // Assume MSVC for unknown environments<br>
              return new MicrosoftX86_64TargetInfo(Triple);<br>
           }<br>
        }<br>
<br>
<br>
_______________________________________________<br>
cfe-commits mailing list<br>
<a href="javascript:;" onclick="_e(event, &amp;#39;cvml&amp;#39;, \
&amp;#39;cfe-commits@cs.uiuc.edu&amp;#39;)">cfe-commits@cs.uiuc.edu</a><br> <a \
href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" \
target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br> \
</blockquote></div><br><br>-- <br>Saleem Abdulrasool<br>compnerd (at) compnerd (dot) \
org<br>



_______________________________________________
cfe-commits mailing list
cfe-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic