[llvm] c52bee6 - [MCParser] Support quoted section name for COFF

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 22 09:12:06 PDT 2020


Author: Fangrui Song
Date: 2020-06-22T09:11:44-07:00
New Revision: c52bee61e91b421da4f603f3aa8111bee2fd1b30

URL: https://github.com/llvm/llvm-project/commit/c52bee61e91b421da4f603f3aa8111bee2fd1b30
DIFF: https://github.com/llvm/llvm-project/commit/c52bee61e91b421da4f603f3aa8111bee2fd1b30.diff

LOG: [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

Added: 
    

Modified: 
    llvm/lib/MC/MCParser/COFFAsmParser.cpp
    llvm/test/MC/COFF/section.s

Removed: 
    


################################################################################
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:      ]


        


More information about the llvm-commits mailing list