<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Apr 1, 2014 at 11:15 AM, Yaron Keren <span dir="ltr"><<a href="mailto:yaron.keren@gmail.com" target="_blank">yaron.keren@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Author: yrnkrn<br>
Date: Tue Apr  1 13:15:34 2014<br>
New Revision: 205338<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=205338&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=205338&view=rev</a><br>
Log:<br>
isTargetWindows() renamed to isTargetKnownWindowsMSVC()<br>
to reflect its current functionality.<br></blockquote><div><br></div><div>The OS is still Windows.  If you are going to split up the subtarget into the respective environments, then you should have the following at the very least:</div>
<div><br></div><div>isTargetWindowsMSVC</div><div>isTargetWindowsGNU</div><div><font face="arial, sans-serif">isTargetWindowsCygnus</font></div><div>isTargetWindowsItanium</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

Based on Takumi NAKAMURA suggestion.<br>
<br>
<br>
Modified:<br>
    llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp<br>
    llvm/trunk/lib/Target/X86/X86FastISel.cpp<br>
    llvm/trunk/lib/Target/X86/X86ISelLowering.cpp<br>
    llvm/trunk/lib/Target/X86/X86ISelLowering.h<br>
    llvm/trunk/lib/Target/X86/X86Subtarget.h<br>
    llvm/trunk/lib/Target/X86/X86TargetMachine.cpp<br>
<br>
Modified: llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp?rev=205338&r1=205337&r2=205338&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp?rev=205338&r1=205337&r2=205338&view=diff</a><br>

==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp (original)<br>
+++ llvm/trunk/lib/Target/X86/X86AsmPrinter.cpp Tue Apr  1 13:15:34 2014<br>
@@ -623,7 +623,7 @@ void X86AsmPrinter::EmitEndOfAsmFile(Mod<br>
     OutStreamer.EmitAssemblerFlag(MCAF_SubsectionsViaSymbols);<br>
   }<br>
<br>
-  if (Subtarget->isTargetWindows() && !Subtarget->isTargetCygMing() &&<br>
+  if (Subtarget->isTargetKnownWindowsMSVC() && !Subtarget->isTargetCygMing() &&<br>
       MMI->usesVAFloatArgument()) {<br>
     StringRef SymbolName = Subtarget->is64Bit() ? "_fltused" : "__fltused";<br>
     MCSymbol *S = MMI->getContext().GetOrCreateSymbol(SymbolName);<br>
@@ -681,12 +681,12 @@ void X86AsmPrinter::EmitEndOfAsmFile(Mod<br>
       OutStreamer.SwitchSection(TLOFCOFF.getDrectveSection());<br>
       SmallString<128> name;<br>
       for (unsigned i = 0, e = DLLExportedGlobals.size(); i != e; ++i) {<br>
-        if (Subtarget->isTargetWindows())<br>
+        if (Subtarget->isTargetKnownWindowsMSVC())<br>
           name = " /EXPORT:";<br>
         else<br>
           name = " -export:";<br>
         name += DLLExportedGlobals[i]->getName();<br>
-        if (Subtarget->isTargetWindows())<br>
+        if (Subtarget->isTargetKnownWindowsMSVC())<br>
           name += ",DATA";<br>
         else<br>
         name += ",data";<br>
@@ -694,7 +694,7 @@ void X86AsmPrinter::EmitEndOfAsmFile(Mod<br>
       }<br>
<br>
       for (unsigned i = 0, e = DLLExportedFns.size(); i != e; ++i) {<br>
-        if (Subtarget->isTargetWindows())<br>
+        if (Subtarget->isTargetKnownWindowsMSVC())<br>
           name = " /EXPORT:";<br>
         else<br>
           name = " -export:";<br>
<br>
Modified: llvm/trunk/lib/Target/X86/X86FastISel.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86FastISel.cpp?rev=205338&r1=205337&r2=205338&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86FastISel.cpp?rev=205338&r1=205337&r2=205338&view=diff</a><br>

==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86FastISel.cpp (original)<br>
+++ llvm/trunk/lib/Target/X86/X86FastISel.cpp Tue Apr  1 13:15:34 2014<br>
@@ -876,7 +876,7 @@ bool X86FastISel::X86SelectRet(const Ins<br>
   // a virtual register in the entry block, so now we copy the value out<br>
   // and into %rax. We also do the same with %eax for Win32.<br>
   if (F.hasStructRetAttr() &&<br>
-      (Subtarget->is64Bit() || Subtarget->isTargetWindows())) {<br>
+      (Subtarget->is64Bit() || Subtarget->isTargetKnownWindowsMSVC())) {<br>
     unsigned Reg = X86MFInfo->getSRetReturnReg();<br>
     assert(Reg &&<br>
            "SRetReturnReg should have been set in LowerFormalArguments()!");<br>
<br>
Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=205338&r1=205337&r2=205338&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=205338&r1=205337&r2=205338&view=diff</a><br>

==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)<br>
+++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Tue Apr  1 13:15:34 2014<br>
@@ -189,7 +189,7 @@ static TargetLoweringObjectFile *createT<br>
     return new X86LinuxTargetObjectFile();<br>
   if (Subtarget->isTargetELF())<br>
     return new TargetLoweringObjectFileELF();<br>
-  if (Subtarget->isTargetWindows())<br>
+  if (Subtarget->isTargetKnownWindowsMSVC())<br>
     return new X86WindowsTargetObjectFile();<br>
   if (Subtarget->isTargetCOFF())<br>
     return new TargetLoweringObjectFileCOFF();<br>
@@ -250,7 +250,7 @@ void X86TargetLowering::resetOperationAc<br>
       addBypassSlowDiv(64, 16);<br>
   }<br>
<br>
-  if (Subtarget->isTargetWindows() && !Subtarget->isTargetCygMing()) {<br>
+  if (Subtarget->isTargetKnownWindowsMSVC() && !Subtarget->isTargetCygMing()) {<br>
     // Setup Windows compiler runtime calls.<br>
     setLibcallName(RTLIB::SDIV_I64, "_alldiv");<br>
     setLibcallName(RTLIB::UDIV_I64, "_aulldiv");<br>
@@ -1906,7 +1906,7 @@ X86TargetLowering::LowerReturn(SDValue C<br>
   // We saved the argument into a virtual register in the entry block,<br>
   // so now we copy the value out and into %rax/%eax.<br>
   if (DAG.getMachineFunction().getFunction()->hasStructRetAttr() &&<br>
-      (Subtarget->is64Bit() || Subtarget->isTargetWindows())) {<br>
+      (Subtarget->is64Bit() || Subtarget->isTargetKnownWindowsMSVC())) {<br>
     MachineFunction &MF = DAG.getMachineFunction();<br>
     X86MachineFunctionInfo *FuncInfo = MF.getInfo<X86MachineFunctionInfo>();<br>
     unsigned Reg = FuncInfo->getSRetReturnReg();<br>
@@ -2291,7 +2291,7 @@ X86TargetLowering::LowerFormalArguments(<br>
   // Save the argument into a virtual register so that we can access it<br>
   // from the return points.<br>
   if (MF.getFunction()->hasStructRetAttr() &&<br>
-      (Subtarget->is64Bit() || Subtarget->isTargetWindows())) {<br>
+      (Subtarget->is64Bit() || Subtarget->isTargetKnownWindowsMSVC())) {<br>
     X86MachineFunctionInfo *FuncInfo = MF.getInfo<X86MachineFunctionInfo>();<br>
     unsigned Reg = FuncInfo->getSRetReturnReg();<br>
     if (!Reg) {<br>
@@ -8494,7 +8494,7 @@ X86TargetLowering::LowerGlobalTLSAddress<br>
                               Chain.getValue(1));<br>
   }<br>
<br>
-  if (Subtarget->isTargetWindows() || Subtarget->isTargetMingw()) {<br>
+  if (Subtarget->isTargetKnownWindowsMSVC() || Subtarget->isTargetMingw()) {<br>
     // Just use the implicit TLS architecture<br>
     // Need to generate someting similar to:<br>
     //   mov     rdx, qword [gs:abs 58H]; Load pointer to ThreadLocalStorage<br>
@@ -15882,7 +15882,7 @@ X86TargetLowering::EmitLoweredWinAlloca(<br>
     }<br>
   } else {<br>
     const char *StackProbeSymbol =<br>
-      Subtarget->isTargetWindows() ? "_chkstk" : "_alloca";<br>
+      Subtarget->isTargetKnownWindowsMSVC() ? "_chkstk" : "_alloca";<br>
<br>
     BuildMI(*BB, MI, DL, TII->get(X86::CALLpcrel32))<br>
       .addExternalSymbol(StackProbeSymbol)<br>
<br>
Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.h?rev=205338&r1=205337&r2=205338&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.h?rev=205338&r1=205337&r2=205338&view=diff</a><br>

==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86ISelLowering.h (original)<br>
+++ llvm/trunk/lib/Target/X86/X86ISelLowering.h Tue Apr  1 13:15:34 2014<br>
@@ -756,7 +756,7 @@ namespace llvm {<br>
     /// isTargetFTOL - Return true if the target uses the MSVC _ftol2 routine<br>
     /// for fptoui.<br>
     bool isTargetFTOL() const {<br>
-      return Subtarget->isTargetWindows() && !Subtarget->is64Bit();<br>
+      return Subtarget->isTargetKnownWindowsMSVC() && !Subtarget->is64Bit();<br>
     }<br>
<br>
     /// isIntegerTypeFTOL - Return true if the MSVC _ftol2 routine should be<br>
<br>
Modified: llvm/trunk/lib/Target/X86/X86Subtarget.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86Subtarget.h?rev=205338&r1=205337&r2=205338&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86Subtarget.h?rev=205338&r1=205337&r2=205338&view=diff</a><br>

==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86Subtarget.h (original)<br>
+++ llvm/trunk/lib/Target/X86/X86Subtarget.h Tue Apr  1 13:15:34 2014<br>
@@ -343,7 +343,7 @@ public:<br>
   bool isTargetNaCl() const { return TargetTriple.isOSNaCl(); }<br>
   bool isTargetNaCl32() const { return isTargetNaCl() && !is64Bit(); }<br>
   bool isTargetNaCl64() const { return isTargetNaCl() && is64Bit(); }<br>
-  bool isTargetWindows() const {<br>
+  bool isTargetKnownWindowsMSVC() const {<br>
     return TargetTriple.isKnownWindowsMSVCEnvironment();<br>
   }<br>
   bool isTargetMingw() const { return TargetTriple.isWindowsGNUEnvironment(); }<br>
@@ -359,7 +359,7 @@ public:<br>
   }<br>
<br>
   bool isTargetWin32() const {<br>
-    return !In64BitMode && (isTargetCygMing() || isTargetWindows());<br>
+    return !In64BitMode && (isTargetCygMing() || isTargetKnownWindowsMSVC());<br>
   }<br>
<br>
   bool isPICStyleSet() const { return PICStyle != PICStyles::None; }<br>
<br>
Modified: llvm/trunk/lib/Target/X86/X86TargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86TargetMachine.cpp?rev=205338&r1=205337&r2=205338&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86TargetMachine.cpp?rev=205338&r1=205337&r2=205338&view=diff</a><br>

==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86TargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/X86/X86TargetMachine.cpp Tue Apr  1 13:15:34 2014<br>
@@ -39,7 +39,7 @@ static std::string computeDataLayout(con<br>
     Ret += "-p:32:32";<br>
<br>
   // Some ABIs align 64 bit integers and doubles to 64 bits, others to 32.<br>
-  if (ST.is64Bit() || ST.isTargetCygMing() || ST.isTargetWindows() ||<br>
+  if (ST.is64Bit() || ST.isTargetCygMing() || ST.isTargetKnownWindowsMSVC() ||<br>
       ST.isTargetNaCl())<br>
     Ret += "-i64:64";<br>
   else<br>
@@ -60,7 +60,7 @@ static std::string computeDataLayout(con<br>
     Ret += "-n8:16:32";<br>
<br>
   // The stack is aligned to 32 bits on some ABIs and 128 bits on others.<br>
-  if (!ST.is64Bit() && (ST.isTargetCygMing() || ST.isTargetWindows()))<br>
+  if (!ST.is64Bit() && (ST.isTargetCygMing() || ST.isTargetKnownWindowsMSVC()))<br>
     Ret += "-S32";<br>
   else<br>
     Ret += "-S128";<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Saleem Abdulrasool<br>compnerd (at) compnerd (dot) org
</div></div>