]> git.proxmox.com Git - mirror_qemu.git/commit
target/mips: Make R5900 DMULT[U], DDIV[U], LL[D] and SC[D] user only
authorFredrik Noring <noring@nocrew.org>
Sun, 21 Oct 2018 15:40:18 +0000 (17:40 +0200)
committerAleksandar Markovic <amarkovic@wavecomp.com>
Wed, 24 Oct 2018 13:20:31 +0000 (15:20 +0200)
commit96631327be14c4f54cc31f873c278d9ffedd1e00
tree07288c34936d4eeb58d33a41ea1ce0a8f2350b11
parent5601e6217d90ed322b4b9a6d68e8db607db91842
target/mips: Make R5900 DMULT[U], DDIV[U], LL[D] and SC[D] user only

The Linux kernel traps certain reserved instruction exceptions to
emulate the corresponding instructions. QEMU plays the role of the
kernel in user mode, so those traps are emulated by accepting the
instructions.

This change adds the function check_insn_opc_user_only to signal a
reserved instruction exception for flagged CPUs in QEMU system mode.

The MIPS III instructions DMULT[U], DDIV[U], LL[D] and SC[D] are not
implemented in R5900 hardware. They are trapped and emulated by the
Linux kernel and, accordingly, therefore QEMU user only instructions.

Reviewed-by: Aleksandar Markovic <amarkovic@wavecomp.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Fredrik Noring <noring@nocrew.org>
Signed-off-by: Aleksandar Markovic <amarkovic@wavecomp.com>
target/mips/translate.c