Skip to content

Commit 4cb887c

Browse files
mshockwavememfrob
authored andcommitted
[M68k][AsmParser] Support negative integer constants
Parsing negative integer constants as expressions. Differential Revision: https://reviews.llvm.org/D101732
1 parent 6dc9808 commit 4cb887c

File tree

15 files changed

+369
-684
lines changed

15 files changed

+369
-684
lines changed

llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ class M68kAsmParser : public MCTargetAsmParser {
4949
// Parser functions.
5050
void eatComma();
5151

52-
bool isExpr() const;
52+
bool isExpr();
5353
OperandMatchResultTy parseImm(OperandVector &Operands);
5454
OperandMatchResultTy parseMemOp(OperandVector &Operands);
5555

@@ -581,11 +581,13 @@ OperandMatchResultTy M68kAsmParser::tryParseRegister(unsigned &RegNo,
581581
return Result;
582582
}
583583

584-
bool M68kAsmParser::isExpr() const {
584+
bool M68kAsmParser::isExpr() {
585585
switch (Parser.getTok().getKind()) {
586586
case AsmToken::Identifier:
587587
case AsmToken::Integer:
588588
return true;
589+
case AsmToken::Minus:
590+
return getLexer().peekTok().getKind() == AsmToken::Integer;
589591

590592
default:
591593
return false;

llvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_FMI.mir

Lines changed: 0 additions & 88 deletions
This file was deleted.

llvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_FMR.mir

Lines changed: 0 additions & 73 deletions
This file was deleted.

llvm/test/CodeGen/M68k/Encoding/Bits/Classes/MxBTST_MI.mir

Lines changed: 0 additions & 115 deletions
This file was deleted.

0 commit comments

Comments
 (0)