mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-14 16:33:28 +00:00
ARM: fix IT decoding
mask == 0 -> UNPRED git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184702 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0c9f0c047d
commit
ff08da15cf
@ -4667,10 +4667,8 @@ static DecodeStatus DecodeIT(MCInst &Inst, unsigned Insn,
|
|||||||
S = MCDisassembler::SoftFail;
|
S = MCDisassembler::SoftFail;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mask == 0x0) {
|
if (mask == 0x0)
|
||||||
mask |= 0x8;
|
return MCDisassembler::Fail;
|
||||||
S = MCDisassembler::SoftFail;
|
|
||||||
}
|
|
||||||
|
|
||||||
Inst.addOperand(MCOperand::CreateImm(pred));
|
Inst.addOperand(MCOperand::CreateImm(pred));
|
||||||
Inst.addOperand(MCOperand::CreateImm(mask));
|
Inst.addOperand(MCOperand::CreateImm(mask));
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
# RUN: llvm-mc --disassemble %s -triple=thumbv7-unknown-unknown 2>&1 | grep "potentially undefined instruction encoding"
|
# CHECK-UNPRED: potentially undefined instruction encoding
|
||||||
|
# CHECK-UNDEF: invalid instruction encoding
|
||||||
|
|
||||||
0xff 0xbf 0x6b 0x80 0x00 0x75
|
# RUN: echo "0xff 0xbf 0x6b 0x80 0x00 0x75" | llvm-mc -disassemble -triple thumbv7 2>&1 | FileCheck %s --check-prefix=CHECK-UNPRED
|
||||||
|
|
||||||
|
# mask = 0
|
||||||
|
# RUN: echo "0x50 0xbf 0x00 0x00" | llvm-mc -disassemble -triple thumbv7 2>&1 | FileCheck %s --check-prefix=CHECK-UNDEF
|
||||||
|
Loading…
x
Reference in New Issue
Block a user