mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-26 21:32:10 +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;
|
||||
}
|
||||
|
||||
if (mask == 0x0) {
|
||||
mask |= 0x8;
|
||||
S = MCDisassembler::SoftFail;
|
||||
}
|
||||
if (mask == 0x0)
|
||||
return MCDisassembler::Fail;
|
||||
|
||||
Inst.addOperand(MCOperand::CreateImm(pred));
|
||||
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…
Reference in New Issue
Block a user