mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-03-18 12:31:26 +00:00
Use the operand vector instead so inline assembly can be validated too
The buildbots got upset after r225941, this should hopefully fix things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225954 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
df6c8efd9d
commit
3eafccc036
@ -2277,11 +2277,11 @@ bool X86AsmParser::validateInstruction(MCInst &Inst, const OperandVector &Ops) {
|
||||
switch (Inst.getOpcode()) {
|
||||
default: return true;
|
||||
case X86::INT:
|
||||
if (Inst.getNumOperands() == 0)
|
||||
return true;
|
||||
assert(Inst.getOperand(0).isImm() && "expected immediate");
|
||||
if (Inst.getOperand(0).getImm() > 255) {
|
||||
Error(Ops[1]->getStartLoc(), "interrupt vector must be in range [0-255]");
|
||||
X86Operand &Op = static_cast<X86Operand &>(*Ops[1]);
|
||||
assert(Op.isImm() && "expected immediate");
|
||||
int64_t Res;
|
||||
if (!Op.getImm()->EvaluateAsAbsolute(Res) || Res > 255) {
|
||||
Error(Op.getStartLoc(), "interrupt vector must be in range [0-255]");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
|
Loading…
x
Reference in New Issue
Block a user