make cygwin use its own stubs set, instead of overloading a darwin one.

llvm-svn: 75105
This commit is contained in:
Chris Lattner 2009-07-09 05:09:24 +00:00
parent d5d80ab6b6
commit 82aa63c9b0
2 changed files with 3 additions and 4 deletions

View File

@ -351,11 +351,10 @@ void X86ATTAsmPrinter::print_pcrel_imm(const MachineInstr *MI, unsigned OpNo) {
// Assemble call via PLT for externally visible symbols.
if (MO.getTargetFlags() == X86II::MO_PLT)
O << "@PLT";
if (Subtarget->isTargetCygMing() && GV->isDeclaration())
// Save function name for later type emission
FnStubs.insert(Name);
CygMingStubs.insert(Name);
}
printOffset(MO.getOffset());
@ -1050,7 +1049,7 @@ bool X86ATTAsmPrinter::doFinalization(Module &M) {
O << "\t.subsections_via_symbols\n";
} else if (Subtarget->isTargetCygMing()) {
// Emit type information for external functions
for (StringSet<>::iterator i = FnStubs.begin(), e = FnStubs.end();
for (StringSet<>::iterator i = CygMingStubs.begin(), e = CygMingStubs.end();
i != e; ++i) {
O << "\t.def\t " << i->getKeyData()
<< ";\t.scl\t" << COFF::C_EXT

View File

@ -199,7 +199,7 @@ class VISIBILITY_HIDDEN X86ATTAsmPrinter : public AsmPrinter {
void emitFunctionHeader(const MachineFunction &MF);
// Necessary for Darwin to print out the apprioriate types of linker stubs
StringSet<> FnStubs, GVStubs, HiddenGVStubs;
StringSet<> FnStubs, GVStubs, HiddenGVStubs, CygMingStubs;
// Necessary for dllexport support
StringSet<> DLLExportedFns, DLLExportedGVs;