aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/XCore
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Target/XCore')
-rw-r--r--lib/Target/XCore/XCoreAsmPrinter.cpp32
-rw-r--r--lib/Target/XCore/XCoreTargetMachine.cpp6
2 files changed, 4 insertions, 34 deletions
diff --git a/lib/Target/XCore/XCoreAsmPrinter.cpp b/lib/Target/XCore/XCoreAsmPrinter.cpp
index ed4c10184323..4ab5d75e5b71 100644
--- a/lib/Target/XCore/XCoreAsmPrinter.cpp
+++ b/lib/Target/XCore/XCoreAsmPrinter.cpp
@@ -244,9 +244,6 @@ emitGlobal(const GlobalVariable *GV)
// Mark the end of the global
O << "\t.cc_bottom " << name << ".data\n";
- } else {
- if (GV->hasExternalWeakLinkage())
- ExtWeakSymbols.insert(GV);
}
}
@@ -375,12 +372,7 @@ void XCoreAsmPrinter::printOperand(const MachineInstr *MI, int opNum) {
printBasicBlockLabel(MO.getMBB());
break;
case MachineOperand::MO_GlobalAddress:
- {
- const GlobalValue *GV = MO.getGlobal();
- O << Mang->getValueName(GV);
- if (GV->hasExternalWeakLinkage())
- ExtWeakSymbols.insert(GV);
- }
+ O << Mang->getValueName(MO.getGlobal());
break;
case MachineOperand::MO_ExternalSymbol:
O << MO.getSymbolName();
@@ -430,25 +422,8 @@ bool XCoreAsmPrinter::doInitialization(Module &M) {
bool Result = AsmPrinter::doInitialization(M);
DW = getAnalysisIfAvailable<DwarfWriter>();
- if (!FileDirective.empty()) {
+ if (!FileDirective.empty())
emitFileDirective(FileDirective);
- }
-
- // Print out type strings for external functions here
- for (Module::const_iterator I = M.begin(), E = M.end();
- I != E; ++I) {
- if (I->isDeclaration() && !I->isIntrinsic()) {
- switch (I->getLinkage()) {
- default:
- assert(0 && "Unexpected linkage");
- case Function::ExternalWeakLinkage:
- ExtWeakSymbols.insert(I);
- // fallthrough
- case Function::ExternalLinkage:
- break;
- }
- }
- }
return Result;
}
@@ -461,8 +436,5 @@ bool XCoreAsmPrinter::doFinalization(Module &M) {
emitGlobal(I);
}
- // Emit final debug information.
- DW->EndModule();
-
return AsmPrinter::doFinalization(M);
}
diff --git a/lib/Target/XCore/XCoreTargetMachine.cpp b/lib/Target/XCore/XCoreTargetMachine.cpp
index cfd3cd3fe3bf..09227d94e2b9 100644
--- a/lib/Target/XCore/XCoreTargetMachine.cpp
+++ b/lib/Target/XCore/XCoreTargetMachine.cpp
@@ -31,10 +31,8 @@ namespace {
RegisterTarget<XCoreTargetMachine> X("xcore", "XCore");
}
-// Force static initialization when called from llvm/InitializeAllTargets.h
-namespace llvm {
- void InitializeXCoreTarget() { }
-}
+// Force static initialization.
+extern "C" void LLVMInitializeXCoreTarget() { }
const TargetAsmInfo *XCoreTargetMachine::createTargetAsmInfo() const {
return new XCoreTargetAsmInfo(*this);