mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-12 07:37:34 +00:00
For t2BFI disassembly, apply the same error checking as in r101205.
Change the error msg to read "Encoding error: msb < lsb". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101293 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
7ad3b2a3f0
commit
2fd100a4cb
@ -892,8 +892,8 @@ static inline bool getBFCInvMask(uint32_t insn, uint32_t &mask) {
|
||||
uint32_t lsb = slice(insn, 11, 7);
|
||||
uint32_t msb = slice(insn, 20, 16);
|
||||
uint32_t Val = 0;
|
||||
if (lsb > msb) {
|
||||
errs() << "Encoding error: lsb > msb\n";
|
||||
if (msb < lsb) {
|
||||
errs() << "Encoding error: msb < lsb\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -1552,7 +1552,10 @@ static bool DisassembleThumb2DPBinImm(MCInst &MI, unsigned Opcode,
|
||||
Opcode == ARM::t2BFI) && "Invalid opcode");
|
||||
MI.addOperand(MCOperand::CreateImm(getLsb(insn)));
|
||||
if (Opcode == ARM::t2BFI) {
|
||||
assert(getMsb(insn) >= getLsb(insn) && "Encoding error");
|
||||
if (getMsb(insn) < getLsb(insn)) {
|
||||
errs() << "Encoding error: msb < lsb\n";
|
||||
return false;
|
||||
}
|
||||
MI.addOperand(MCOperand::CreateImm(getMsb(insn) - getLsb(insn) + 1));
|
||||
} else
|
||||
MI.addOperand(MCOperand::CreateImm(getWidthMinus1(insn) + 1));
|
||||
|
Loading…
x
Reference in New Issue
Block a user