<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>