mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-23 17:29:19 +00:00
McARM: Early exit on failure (NEFC).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123739 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d3df5f32c0
commit
0571093f4c
@ -710,6 +710,11 @@ ParseMemory(SmallVectorImpl<MCParsedAsmOperand*> &Operands) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// The next token must either be a comma or a closing bracket.
|
||||
const AsmToken &Tok = Parser.getTok();
|
||||
if (!Tok.is(AsmToken::Comma) && !Tok.is(AsmToken::RBrac))
|
||||
return true;
|
||||
|
||||
bool Preindexed = false;
|
||||
bool Postindexed = false;
|
||||
bool OffsetIsReg = false;
|
||||
@ -718,7 +723,6 @@ ParseMemory(SmallVectorImpl<MCParsedAsmOperand*> &Operands) {
|
||||
|
||||
// First look for preindexed address forms, that is after the "[Rn" we now
|
||||
// have to see if the next token is a comma.
|
||||
const AsmToken &Tok = Parser.getTok();
|
||||
if (Tok.is(AsmToken::Comma)) {
|
||||
Preindexed = true;
|
||||
Parser.Lex(); // Eat comma token.
|
||||
@ -738,7 +742,6 @@ ParseMemory(SmallVectorImpl<MCParsedAsmOperand*> &Operands) {
|
||||
E = RBracTok.getLoc();
|
||||
Parser.Lex(); // Eat right bracket token.
|
||||
|
||||
|
||||
const AsmToken &ExclaimTok = Parser.getTok();
|
||||
ARMOperand *WBOp = 0;
|
||||
if (ExclaimTok.is(AsmToken::Exclaim)) {
|
||||
@ -763,9 +766,9 @@ ParseMemory(SmallVectorImpl<MCParsedAsmOperand*> &Operands) {
|
||||
Operands.push_back(WBOp);
|
||||
|
||||
return false;
|
||||
}
|
||||
// The "[Rn" we have so far was not followed by a comma.
|
||||
else if (Tok.is(AsmToken::RBrac)) {
|
||||
} else {
|
||||
// The "[Rn" we have so far was not followed by a comma.
|
||||
|
||||
// If there's anything other than the right brace, this is a post indexing
|
||||
// addressing form.
|
||||
E = Tok.getLoc();
|
||||
@ -809,8 +812,6 @@ ParseMemory(SmallVectorImpl<MCParsedAsmOperand*> &Operands) {
|
||||
S, E));
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/// Parse the offset of a memory operand after we have seen "[Rn," or "[Rn],"
|
||||
|
Loading…
Reference in New Issue
Block a user