[llvm] [RISCV] Error out on incorrectly spelt @plt on call symbols (PR #135324)

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Sun Apr 13 09:39:51 PDT 2025


================
@@ -2123,22 +2123,25 @@ ParseStatus RISCVAsmParser::parseCallSymbol(OperandVector &Operands) {
 
   if (getLexer().getKind() != AsmToken::Identifier)
     return ParseStatus::NoMatch;
+
   std::string Identifier(getTok().getIdentifier());
+  SMLoc E = getTok().getEndLoc();
 
   if (getLexer().peekTok().is(AsmToken::At)) {
     Lex();
     Lex();
     StringRef PLT;
+    SMLoc PLTLoc = getLoc();
     if (getParser().parseIdentifier(PLT) || PLT != "plt")
----------------
MaskRay wrote:

I think it's fine to only accept `@plt` and not `@PLT`. This is a workaround for GCC output and we don't encourage that users write this...

After I replaced `x at plt - .` with `%pltpcrel`, this `@plt` is the only `@` specifier workaround.

https://github.com/llvm/llvm-project/pull/135324


More information about the llvm-commits mailing list