1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00
llvm-svn: 52857
This commit is contained in:
Anton Korobeynikov 2008-06-28 11:07:35 +00:00
parent f4017f7d50
commit b75aeb6b1a

View File

@ -318,7 +318,7 @@ void X86IntelAsmPrinter::printMachineInstruction(const MachineInstr *MI) {
} }
bool X86IntelAsmPrinter::doInitialization(Module &M) { bool X86IntelAsmPrinter::doInitialization(Module &M) {
bool Result = X86SharedAsmPrinter::doInitialization(M); bool Result = AsmPrinter::doInitialization(M);
Mang->markCharUnacceptable('.'); Mang->markCharUnacceptable('.');
@ -415,8 +415,7 @@ bool X86IntelAsmPrinter::doFinalization(Module &M) {
} }
// Output linker support code for dllexported globals // Output linker support code for dllexported globals
if (!DLLExportedGVs.empty() || if (!DLLExportedGVs.empty() || !DLLExportedFns.empty()) {
!DLLExportedFns.empty()) {
SwitchToDataSection(""); SwitchToDataSection("");
O << "; WARNING: The following code is valid only with MASM v8.x and (possible) higher\n" O << "; WARNING: The following code is valid only with MASM v8.x and (possible) higher\n"
<< "; This version of MASM is usually shipped with Microsoft Visual Studio 2005\n" << "; This version of MASM is usually shipped with Microsoft Visual Studio 2005\n"
@ -427,20 +426,16 @@ bool X86IntelAsmPrinter::doFinalization(Module &M) {
for (StringSet<>::iterator i = DLLExportedGVs.begin(), for (StringSet<>::iterator i = DLLExportedGVs.begin(),
e = DLLExportedGVs.end(); e = DLLExportedGVs.end();
i != e; ++i) { i != e; ++i)
O << "\t db ' /EXPORT:" << i->getKeyData() << ",data'\n"; O << "\t db ' /EXPORT:" << i->getKeyData() << ",data'\n";
}
for (StringSet<>::iterator i = DLLExportedFns.begin(), for (StringSet<>::iterator i = DLLExportedFns.begin(),
e = DLLExportedFns.end(); e = DLLExportedFns.end();
i != e; ++i) { i != e; ++i)
O << "\t db ' /EXPORT:" << i->getKeyData() << "'\n"; O << "\t db ' /EXPORT:" << i->getKeyData() << "'\n";
}
if (!DLLExportedGVs.empty() || if (!DLLExportedGVs.empty() || !DLLExportedFns.empty())
!DLLExportedFns.empty()) {
O << "_drectve\t ends\n"; O << "_drectve\t ends\n";
}
// Bypass X86SharedAsmPrinter::doFinalization(). // Bypass X86SharedAsmPrinter::doFinalization().
bool Result = AsmPrinter::doFinalization(M); bool Result = AsmPrinter::doFinalization(M);