Really big cleanup.
- New target type "mingw" was introduced
- Same things for both mingw & cygwin are marked as "cygming" (as in
gcc)
- .lcomm is supported here, so allow LLVM to use it
- Correctly use underscored versions of setjmp & _longjmp for both mingw
& cygwin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32833 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/X86/X86AsmPrinter.cpp b/lib/Target/X86/X86AsmPrinter.cpp
index 65d2e7d..4f55f42a 100644
--- a/lib/Target/X86/X86AsmPrinter.cpp
+++ b/lib/Target/X86/X86AsmPrinter.cpp
@@ -111,7 +111,7 @@
// Emit initial debug information.
DW.BeginModule(&M);
- } else if (Subtarget->isTargetELF() || Subtarget->isTargetCygwin()) {
+ } else if (Subtarget->isTargetELF() || Subtarget->isTargetCygMing()) {
// Emit initial debug information.
DW.BeginModule(&M);
}
@@ -161,7 +161,7 @@
} else
O << TAI->getCOMMDirective() << name << "," << Size;
} else {
- if (!Subtarget->isTargetCygwin()) {
+ if (!Subtarget->isTargetCygMing()) {
if (I->hasInternalLinkage())
O << "\t.local\t" << name << "\n";
}
@@ -179,7 +179,7 @@
O << "\t.globl " << name << "\n"
<< "\t.weak_definition " << name << "\n";
SwitchToDataSection(".section __DATA,__const_coal,coalesced", I);
- } else if (Subtarget->isTargetCygwin()) {
+ } else if (Subtarget->isTargetCygMing()) {
std::string SectionName(".section\t.data$linkonce." +
name +
",\"aw\"");
@@ -218,7 +218,7 @@
I->getSection() == ".dtors")) {
std::string SectionName = ".section " + I->getSection();
- if (Subtarget->isTargetCygwin()) {
+ if (Subtarget->isTargetCygMing()) {
SectionName += ",\"aw\"";
} else {
assert(!Subtarget->isTargetDarwin());
@@ -310,7 +310,7 @@
// linker can safely perform dead code stripping. Since LLVM never
// generates code that does this, it is always safe to set.
O << "\t.subsections_via_symbols\n";
- } else if (Subtarget->isTargetELF() || Subtarget->isTargetCygwin()) {
+ } else if (Subtarget->isTargetELF() || Subtarget->isTargetCygMing()) {
// Emit final debug information.
DW.EndModule();
}