ARM undefined instruction execution (Jason Wessel)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1938 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
ba9a74dae0
commit
159f366388
@ -1589,6 +1589,15 @@ static void disas_arm_insn(CPUState * env, DisasContext *s)
|
||||
case 0x5:
|
||||
case 0x6:
|
||||
case 0x7:
|
||||
/* Check for undefined extension instructions
|
||||
* per the ARM Bible IE:
|
||||
* xxxx 0111 1111 xxxx xxxx xxxx 1111 xxxx
|
||||
*/
|
||||
sh = (0xf << 20) | (0xf << 4);
|
||||
if (op1 == 0x7 && ((insn & sh) == sh))
|
||||
{
|
||||
goto illegal_op;
|
||||
}
|
||||
/* load/store byte/word */
|
||||
rn = (insn >> 16) & 0xf;
|
||||
rd = (insn >> 12) & 0xf;
|
||||
|
Loading…
Reference in New Issue
Block a user