diff options
-rw-r--r-- | lib/Target/ARM/ARMAsmPrinter.cpp | 2 | ||||
-rw-r--r-- | test/CodeGen/ARM/weak.ll | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/lib/Target/ARM/ARMAsmPrinter.cpp b/lib/Target/ARM/ARMAsmPrinter.cpp index 51a0f883d2..ba5cdb1940 100644 --- a/lib/Target/ARM/ARMAsmPrinter.cpp +++ b/lib/Target/ARM/ARMAsmPrinter.cpp @@ -128,7 +128,7 @@ bool ARMAsmPrinter::runOnMachineFunction(MachineFunction &MF) { break; case Function::WeakLinkage: case Function::LinkOnceLinkage: - assert(0 && "Not implemented"); + O << "\t.weak\t" << CurrentFnName << "\n"; break; } EmitAlignment(2, F); diff --git a/test/CodeGen/ARM/weak.ll b/test/CodeGen/ARM/weak.ll new file mode 100644 index 0000000000..682da8c42b --- /dev/null +++ b/test/CodeGen/ARM/weak.ll @@ -0,0 +1,9 @@ +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm && +; RUN: llvm-upgrade < %s | llvm-as | llc -march=arm | grep .weak + +implementation ; Functions: + +weak uint %f() { +entry: + unreachable +} |