1 /* Simulator signal support
2    Copyright (C) 1997 Free Software Foundation, Inc.
3    Contributed by Cygnus Support
4 
5 This file is part of the GNU Simulators.
6 
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)
10 any later version.
11 
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.
16 
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.  */
20 
21 #ifndef SIM_SIGNAL_H
22 #define SIM_SIGNAL_H
23 
24 /* Signals we use.
25    This provides a layer between our values and host/target values.  */
26 
27 typedef enum {
28   SIM_SIGNONE = 64,
29   /* illegal insn */
30   SIM_SIGILL,
31   /* breakpoint */
32   SIM_SIGTRAP,
33   /* misaligned memory access */
34   SIM_SIGBUS,
35   /* tried to read/write memory that's not readable/writable */
36   SIM_SIGSEGV,
37   /* cpu limit exceeded */
38   SIM_SIGXCPU,
39   /* simulation interrupted (sim_stop called) */
40   SIM_SIGINT,
41   /* Floating point or integer divide */
42   SIM_SIGFPE,
43   /* simulation aborted */
44   SIM_SIGABRT
45 } SIM_SIGNAL;
46 
47 int sim_signal_to_host (SIM_DESC sd, SIM_SIGNAL);
48 
49 #endif /* SIM_SIGNAL_H */
50