Fix external symbol printing in the AsmPrinter. Tell the ISel that we
don't support things like memcpy directly. This allows a handful of the
Shootout programs to work, yay!
llvm-svn: 20939
diff --git a/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp
index a50a437..025ce98 100644
--- a/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp
+++ b/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp
@@ -349,7 +349,13 @@
return;
case MachineOperand::MO_ExternalSymbol:
- O << MO.getSymbolName();
+ if (IsCallOp) {
+ std::string Name(GlobalPrefix); Name += MO.getSymbolName();
+ FnStubs.insert(Name);
+ O << "L" << Name << "$stub";
+ return;
+ }
+ O << GlobalPrefix << MO.getSymbolName();
return;
case MachineOperand::MO_GlobalAddress: {