mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-27 02:31:09 +00:00
MC/X86: Add temporary hack to match shrl $1,%eax correctly, to support testing
other functionality on 403.gcc compiled at -O0. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98405 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
69c695ee47
commit
d5e7705a05
@ -542,6 +542,15 @@ ParseInstruction(const StringRef &Name, SMLoc NameLoc,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FIXME: Hack to handle recognizing s{hr,ar,hl}? $1.
|
||||||
|
if ((Name.startswith("shr") || Name.startswith("sar") ||
|
||||||
|
Name.startswith("shl")) &&
|
||||||
|
Operands.size() == 3 &&
|
||||||
|
static_cast<X86Operand*>(Operands[1])->isImm() &&
|
||||||
|
isa<MCConstantExpr>(static_cast<X86Operand*>(Operands[1])->getImm()) &&
|
||||||
|
cast<MCConstantExpr>(static_cast<X86Operand*>(Operands[1])->getImm())->getValue() == 1)
|
||||||
|
Operands.erase(Operands.begin() + 1);
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -47,3 +47,6 @@ rdtscp
|
|||||||
|
|
||||||
// CHECK: addw %ax, %ax # encoding: [0x66,0x01,0xc0]
|
// CHECK: addw %ax, %ax # encoding: [0x66,0x01,0xc0]
|
||||||
addw %ax, %ax
|
addw %ax, %ax
|
||||||
|
|
||||||
|
// CHECK: shrl %eax # encoding: [0xd1,0xe8]
|
||||||
|
shrl $1, %eax
|
||||||
|
Loading…
x
Reference in New Issue
Block a user