From c52bee61e91b421da4f603f3aa8111bee2fd1b30 Mon Sep 17 00:00:00 2001 From: Fangrui Song Date: Mon, 22 Jun 2020 09:11:44 -0700 Subject: [PATCH] [MCParser] Support quoted section name for COFF This features matches ELFAsmParser and makes it possible to use `.section ".llvm.call-graph-profile","n"` Reviewed By: zequanwu Differential Revision: https://reviews.llvm.org/D82240 --- llvm/lib/MC/MCParser/COFFAsmParser.cpp | 2 +- llvm/test/MC/COFF/section.s | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/llvm/lib/MC/MCParser/COFFAsmParser.cpp b/llvm/lib/MC/MCParser/COFFAsmParser.cpp index 649023b59bbb..dec004eb6f95 100644 --- a/llvm/lib/MC/MCParser/COFFAsmParser.cpp +++ b/llvm/lib/MC/MCParser/COFFAsmParser.cpp @@ -321,7 +321,7 @@ bool COFFAsmParser::ParseSectionSwitch(StringRef Section, } bool COFFAsmParser::ParseSectionName(StringRef &SectionName) { - if (!getLexer().is(AsmToken::Identifier)) + if (!getLexer().is(AsmToken::Identifier) && !getLexer().is(AsmToken::String)) return true; SectionName = getTok().getIdentifier(); diff --git a/llvm/test/MC/COFF/section.s b/llvm/test/MC/COFF/section.s index b7b5422babdb..5116d179f16d 100644 --- a/llvm/test/MC/COFF/section.s +++ b/llvm/test/MC/COFF/section.s @@ -190,5 +190,11 @@ // CHECK-NEXT: ] // CHECK: } +/// The section name can be quoted. +.section "@#$-{","n" +// CHECK: Section { +// CHECK-NEXT: Number: +// CHECK-NEXT: Name: @#$-{ +// CHECK-NOT: Section { // CHECK: ]