target/mips: Extract break code into env->error_code
authorRichard Henderson <richard.henderson@linaro.org>
Fri, 7 Jan 2022 21:32:35 +0000 (13:32 -0800)
committerLaurent Vivier <laurent@vivier.eu>
Tue, 11 Jan 2022 17:40:44 +0000 (18:40 +0100)
commit6f3533dd1b6afbce8d215bb89027fa5b7caa4168
tree35b02ea7dc72f42e2cb6776807b06a81252cc453
parent73c0aa6a85253d1d5df6a7dfa14c7568e084cf96
target/mips: Extract break code into env->error_code

Simplify cpu_loop by doing all of the decode in translate.

This fixes a bug in that cpu_loop was not handling the
different layout of the R6 version of break16.  This fixes
a bug in that cpu_loop extracted the wrong bits for the
mips16e break16 instruction.

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20220107213243.212806-17-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
linux-user/mips/cpu_loop.c
target/mips/tcg/micromips_translate.c.inc
target/mips/tcg/mips16e_translate.c.inc
target/mips/tcg/translate.c
target/mips/tcg/translate.h