mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-05 12:31:33 +00:00
Correction to assert statemtent to allow 32-bit unsigned numbers with the top bit set.
This fixes an ARM assembler crash - regression test added. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207747 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
06ace3c869
commit
8b88679164
@ -9487,8 +9487,8 @@ unsigned ARMAsmParser::validateTargetOperandClass(MCParsedAsmOperand *AsmOp,
|
|||||||
int64_t Value;
|
int64_t Value;
|
||||||
if (!SOExpr->EvaluateAsAbsolute(Value))
|
if (!SOExpr->EvaluateAsAbsolute(Value))
|
||||||
return Match_Success;
|
return Match_Success;
|
||||||
assert((Value >= INT32_MIN && Value <= INT32_MAX) &&
|
assert((Value >= INT32_MIN && Value <= UINT32_MAX) &&
|
||||||
"expression value must be representiable in 32 bits");
|
"expression value must be representable in 32 bits");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case MCK_GPRPair:
|
case MCK_GPRPair:
|
||||||
|
@ -81,3 +81,10 @@ foo2:
|
|||||||
@ CHECK-ERRORS: ^
|
@ CHECK-ERRORS: ^
|
||||||
@ CHECK-ERRORS: error: immediate expression for mov requires :lower16: or :upper16
|
@ CHECK-ERRORS: error: immediate expression for mov requires :lower16: or :upper16
|
||||||
@ CHECK-ERRORS: ^
|
@ CHECK-ERRORS: ^
|
||||||
|
|
||||||
|
and sp, r1, #80008000
|
||||||
|
and pc, r1, #80008000
|
||||||
|
@ CHECK-ERRORS: error: invalid operand for instruction
|
||||||
|
@ CHECK-ERRORS: error: invalid operand for instruction
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user