qemu/target/mips
Philippe Mathieu-Daudé e895095c78 target/mips: Only update MVPControl.EVP bit if executed by master VPE
According to the 'MIPS MT Application-Specific Extension' manual:

  If the VPE executing the instruction is not a Master VPE,
  with the MVP bit of the VPEConf0 register set, the EVP bit
  is unchanged by the instruction.

Modify the DVPE/EVPE opcodes to only update the MVPControl.EVP bit
if executed on a master VPE.

Cc: qemu-stable@nongnu.org
Reported-by: Hansni Bu
Buglink: https://bugs.launchpad.net/qemu/+bug/1926277
Fixes: f249412c74 ("mips: Add MT halting and waking of VPEs")
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
Message-ID: <20210427133343.159718-1-f4bug@amsat.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
2025-07-29 13:56:15 +02:00
..
system target/qmp: Use target_cpu_type() 2025-07-15 02:56:39 -04:00
tcg target/mips: Only update MVPControl.EVP bit if executed by master VPE 2025-07-29 13:56:15 +02:00
cpu-defs.c.inc target/mips: Add support for emulation of CRC32 instructions 2025-07-15 00:07:46 +02:00
cpu-param.h tcg: Remove the TCG_GUEST_DEFAULT_MO definition globally 2025-04-23 15:07:32 -07:00
cpu-qom.h target: Move ArchCPUClass definition to 'cpu.h' 2023-11-07 13:08:48 +01:00
cpu.c target/mips: Fill in TCGCPUOps.pointer_wrap 2025-05-28 08:08:48 +01:00
cpu.h accel/tcg: Hoist cpu_get_tb_cpu_state decl to accl/tcg/cpu-ops.h 2025-04-30 12:45:05 -07:00
fpu_helper.h fpu: allow flushing of output denormals to be after rounding 2025-02-11 16:22:07 +00:00
fpu.c target/mips: Optimize CPU/FPU regnames[] arrays 2021-05-02 16:49:34 +02:00
gdbstub.c target/mips: Prefer fast cpu_env() over slower CPU QOM cast macro 2024-03-12 12:04:24 +01:00
helper.h target/mips: Add support for emulation of CRC32 instructions 2025-07-15 00:07:46 +02:00
internal.h target/mips: Move has_work() from CPUClass to SysemuCPUOps 2025-03-09 17:00:47 +01:00
Kconfig target/mips: Restrict semihosting to TCG 2024-07-22 09:38:10 +01:00
kvm_mips.h kvm: Introduce kvm_arch_get_default_type hook 2023-08-22 17:31:02 +01:00
kvm.c kvm: Introduce kvm_arch_pre_create_vcpu() 2025-05-28 19:01:40 +02:00
meson.build target/mips: Add support for emulation of CRC32 instructions 2025-07-15 00:07:46 +02:00
mips-defs.h target/mips: Introduce disas_mt_available() 2024-11-03 05:52:49 -03:00
msa.c fpu: allow flushing of output denormals to be after rounding 2025-02-11 16:22:07 +00:00