mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-27 04:13:53 -06:00
linux-user/sparc: Handle tag overflow traps
This trap is raised by taddcctv and tsubcctv insns. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20230216054516.1267305-16-richard.henderson@linaro.org> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
parent
4ea3af392f
commit
e64c6d42b6
3 changed files with 9 additions and 1 deletions
|
@ -328,6 +328,9 @@ void cpu_loop (CPUSPARCState *env)
|
||||||
case TT_PRIV_INSN:
|
case TT_PRIV_INSN:
|
||||||
force_sig_fault(TARGET_SIGILL, TARGET_ILL_PRVOPC, env->pc);
|
force_sig_fault(TARGET_SIGILL, TARGET_ILL_PRVOPC, env->pc);
|
||||||
break;
|
break;
|
||||||
|
case TT_TOVF:
|
||||||
|
force_sig_fault(TARGET_SIGEMT, TARGET_EMT_TAGOVF, env->pc);
|
||||||
|
break;
|
||||||
#ifdef TARGET_SPARC64
|
#ifdef TARGET_SPARC64
|
||||||
case TT_PRIV_ACT:
|
case TT_PRIV_ACT:
|
||||||
/* Note do_privact defers to do_privop. */
|
/* Note do_privact defers to do_privop. */
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
#define TARGET_SIGTRAP 5
|
#define TARGET_SIGTRAP 5
|
||||||
#define TARGET_SIGABRT 6
|
#define TARGET_SIGABRT 6
|
||||||
#define TARGET_SIGIOT 6
|
#define TARGET_SIGIOT 6
|
||||||
#define TARGET_SIGSTKFLT 7 /* actually EMT */
|
#define TARGET_SIGEMT 7
|
||||||
#define TARGET_SIGFPE 8
|
#define TARGET_SIGFPE 8
|
||||||
#define TARGET_SIGKILL 9
|
#define TARGET_SIGKILL 9
|
||||||
#define TARGET_SIGBUS 10
|
#define TARGET_SIGBUS 10
|
||||||
|
|
|
@ -717,6 +717,11 @@ typedef struct target_siginfo {
|
||||||
#define TARGET_TRAP_HWBKPT (4) /* hardware breakpoint/watchpoint */
|
#define TARGET_TRAP_HWBKPT (4) /* hardware breakpoint/watchpoint */
|
||||||
#define TARGET_TRAP_UNK (5) /* undiagnosed trap */
|
#define TARGET_TRAP_UNK (5) /* undiagnosed trap */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* SIGEMT si_codes
|
||||||
|
*/
|
||||||
|
#define TARGET_EMT_TAGOVF 1 /* tag overflow */
|
||||||
|
|
||||||
#include "target_resource.h"
|
#include "target_resource.h"
|
||||||
|
|
||||||
struct target_pollfd {
|
struct target_pollfd {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue