diff options
| -rw-r--r-- | lld/ELF/Driver.cpp | 1 | ||||
| -rw-r--r-- | lld/test/ELF/lto/inline-asm.ll | 11 |
2 files changed, 12 insertions, 0 deletions
diff --git a/lld/ELF/Driver.cpp b/lld/ELF/Driver.cpp index 7b1ee794601..806846e77cd 100644 --- a/lld/ELF/Driver.cpp +++ b/lld/ELF/Driver.cpp @@ -321,6 +321,7 @@ template <class ELFT> void LinkerDriver::link(opt::InputArgList &Args) { InitializeAllTargets(); InitializeAllTargetMCs(); InitializeAllAsmPrinters(); + InitializeAllAsmParsers(); SymbolTable<ELFT> Symtab; std::unique_ptr<TargetInfo> TI(createTarget()); diff --git a/lld/test/ELF/lto/inline-asm.ll b/lld/test/ELF/lto/inline-asm.ll new file mode 100644 index 00000000000..b6af6a5a5cb --- /dev/null +++ b/lld/test/ELF/lto/inline-asm.ll @@ -0,0 +1,11 @@ +; REQUIRES: x86 +; RUN: llvm-as %s -o %t.o +; RUN: ld.lld -m elf_x86_64 %t.o -o %t.so -shared + +target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" +target triple = "x86_64-unknown-linux-gnu" + +define void @foo() { + call void asm "nop", ""() + ret void +} |

