From 4ec5d67e49a5df9381b30470b68ebf0d01545dc0 Mon Sep 17 00:00:00 2001 From: Galina Kistanova Date: Sat, 3 Nov 2018 05:25:49 +0000 Subject: [PATCH] Handle OUTPUT_FORMAT arguments in quotation marks llvm-svn: 346068 --- lld/ELF/ScriptParser.cpp | 2 +- lld/test/ELF/format-binary.test | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lld/ELF/ScriptParser.cpp b/lld/ELF/ScriptParser.cpp index 2b9de7e..b180211 100644 --- a/lld/ELF/ScriptParser.cpp +++ b/lld/ELF/ScriptParser.cpp @@ -384,7 +384,7 @@ void ScriptParser::readOutputArch() { } std::pair ScriptParser::readBfdName() { - StringRef S = next(); + StringRef S = unquote(next()); if (S == "elf32-i386") return {ELF32LEKind, EM_386}; if (S == "elf32-iamcu") diff --git a/lld/test/ELF/format-binary.test b/lld/test/ELF/format-binary.test index 311cd77..7c554bb6 100644 --- a/lld/test/ELF/format-binary.test +++ b/lld/test/ELF/format-binary.test @@ -61,3 +61,9 @@ # RUN: llvm-readobj %t.out -sections -section-data -symbols | FileCheck -check-prefix=X86-64 %s # X86-64: Format: ELF64-x86-64 + +# RUN: echo 'OUTPUT_FORMAT("elf64-x86-64")' > %t.script +# RUN: ld.lld -b binary %t.binary -T %t.script -o %t.out +# RUN: llvm-readobj %t.out -sections -section-data -symbols | FileCheck -check-prefix=X86-64-in-quotes %s + +# X86-64-in-quotes: Format: ELF64-x86-64 -- 2.7.4