diff --git a/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp b/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp index 12783a823ad0a7293da166e25b053b8c15fd0edc..85552339ce6007b80e8485cf43d844f22f40880e 100644 --- a/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp +++ b/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp @@ -1807,11 +1807,11 @@ std::unique_ptr<X86Operand> X86AsmParser::ParseIntelOperand() { Parser.Lex(); // Eat operand size (e.g., byte, word). if (KsSyntax == KS_OPT_SYNTAX_NASM) { // Nasm do not accept 'PTR' in memory operands - if (Tok.getString() == "PTR" && Tok.getString() == "ptr") + if (strcasecmp(Tok.getString().str().c_str(), "ptr") == 0) return ErrorOperand(Tok.getLoc(), "Do not expected 'PTR' or 'ptr' token!"); } else { // LLVM requires 'PTR' in memory operand - if (Tok.getString() != "PTR" && Tok.getString() != "ptr") + if (strcasecmp(Tok.getString().str().c_str(), "ptr") != 0) return ErrorOperand(Tok.getLoc(), "Expected 'PTR' or 'ptr' token!"); Parser.Lex(); // Eat ptr. }