diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2010-11-12 15:47:08 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2010-11-12 15:47:08 +0000 |
commit | d4a352609f0ebe8bdea2f70d4e0efae9b5db778e (patch) | |
tree | 65939c8ea9dda9be6124eb003cb9092db2f06ca9 /lib/MC/MCParser/ELFAsmParser.cpp | |
parent | c9d8a75e44a56828cb4adcb9f54ff5c825571ce4 (diff) |
gnu as support both % and @ before types, do the same.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118893 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC/MCParser/ELFAsmParser.cpp')
-rw-r--r-- | lib/MC/MCParser/ELFAsmParser.cpp | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/lib/MC/MCParser/ELFAsmParser.cpp b/lib/MC/MCParser/ELFAsmParser.cpp index 278f146ad6..b3d5f11e0e 100644 --- a/lib/MC/MCParser/ELFAsmParser.cpp +++ b/lib/MC/MCParser/ELFAsmParser.cpp @@ -213,12 +213,6 @@ bool ELFAsmParser::ParseDirectiveSection(StringRef, SMLoc) { FlagsStr = getTok().getStringContents(); Lex(); - AsmToken::TokenKind TypeStartToken; - if (getContext().getAsmInfo().getCommentString()[0] == '@') - TypeStartToken = AsmToken::Percent; - else - TypeStartToken = AsmToken::At; - bool Mergeable = FlagsStr.find('M') != StringRef::npos; bool Group = FlagsStr.find('G') != StringRef::npos; @@ -229,8 +223,8 @@ bool ELFAsmParser::ParseDirectiveSection(StringRef, SMLoc) { return TokError("Group section must specify the type"); } else { Lex(); - if (getLexer().isNot(TypeStartToken)) - return TokError("expected the type"); + if (getLexer().isNot(AsmToken::Percent) && getLexer().isNot(AsmToken::At)) + return TokError("expected '@' or '%' before type"); Lex(); if (getParser().ParseIdentifier(TypeName)) @@ -359,8 +353,8 @@ bool ELFAsmParser::ParseDirectiveType(StringRef, SMLoc) { return TokError("unexpected token in '.type' directive"); Lex(); - if (getLexer().isNot(AsmToken::At)) - return TokError("expected '@' before type"); + if (getLexer().isNot(AsmToken::Percent) && getLexer().isNot(AsmToken::At)) + return TokError("expected '@' or '%' before type"); Lex(); StringRef Type; |