1 /* Simulator signal support
2 Copyright (C) 1997 Free Software Foundation, Inc.
3 Contributed by Cygnus Support
5 This file is part of the GNU Simulators.
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License along
18 with this program; if not, write to the Free Software Foundation, Inc.,
19 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
24 /* Convert SIM_SIGFOO to SIGFOO.
25 What to do when the host doesn't have SIGFOO is handled on a case by case
26 basis. Generally, in the case of passing a value back to gdb, we want gdb
27 to not think the process has died (so it can be debugged at the point of
43 sim_signal_to_host (SIM_DESC sd
, SIM_SIGNAL sig
)
90 sim_io_eprintf (sd
, "sim_signal_to_host: unknown signal: %d\n", sig
);
92 return SIGHUP
; /* FIXME: Suggestions? */
99 sim_signal_to_target (SIM_DESC sd
, SIM_SIGNAL sig
)
104 return TARGET_SIGNAL_INT
;
107 return TARGET_SIGNAL_ABRT
;
110 return TARGET_SIGNAL_ILL
;
113 return TARGET_SIGNAL_TRAP
;
116 return TARGET_SIGNAL_BUS
;
119 return TARGET_SIGNAL_SEGV
;
122 return TARGET_SIGNAL_XCPU
;
125 return TARGET_SIGNAL_FPE
;
129 return TARGET_SIGNAL_0
;
133 sim_io_eprintf (sd
, "sim_signal_to_host: unknown signal: %d\n", sig
);
134 return TARGET_SIGNAL_HUP
;