1// Copyright 2014 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package runtime
6
7var sigtable = [...]sigTabT{
8	/* 0 */ {0, "SIGNONE: no trap"},
9	/* 1 */ {_SigNotify + _SigKill, "SIGHUP: hangup"},
10	/* 2 */ {_SigNotify + _SigKill, "SIGINT: interrupt (rubout)"},
11	/* 3 */ {_SigNotify + _SigThrow, "SIGQUIT: quit (ASCII FS)"},
12	/* 4 */ {_SigThrow + _SigUnblock, "SIGILL: illegal instruction (not reset when caught)"},
13	/* 5 */ {_SigThrow + _SigUnblock, "SIGTRAP: trace trap (not reset when caught)"},
14	/* 6 */ {_SigNotify + _SigThrow, "SIGABRT: used by abort, replace SIGIOT in the future"},
15	/* 7 */ {_SigThrow, "SIGEMT: EMT instruction"},
16	/* 8 */ {_SigPanic + _SigUnblock, "SIGFPE: floating point exception"},
17	/* 9 */ {0, "SIGKILL: kill (cannot be caught or ignored)"},
18	/* 10 */ {_SigPanic + _SigUnblock, "SIGBUS: bus error"},
19	/* 11 */ {_SigPanic + _SigUnblock, "SIGSEGV: segmentation violation"},
20	/* 12 */ {_SigThrow, "SIGSYS: bad argument to system call"},
21	/* 13 */ {_SigNotify, "SIGPIPE: write on a pipe with no one to read it"},
22	/* 14 */ {_SigNotify, "SIGALRM: alarm clock"},
23	/* 15 */ {_SigNotify + _SigKill, "SIGTERM: software termination signal from kill"},
24	/* 16 */ {_SigNotify, "SIGUSR1: user defined signal 1"},
25	/* 17 */ {_SigNotify, "SIGUSR2: user defined signal 2"},
26	/* 18 */ {_SigNotify + _SigUnblock + _SigIgn, "SIGCHLD: child status change alias (POSIX)"},
27	/* 19 */ {_SigNotify, "SIGPWR: power-fail restart"},
28	/* 20 */ {_SigNotify + _SigIgn, "SIGWINCH: window size change"},
29	/* 21 */ {_SigNotify + _SigIgn, "SIGURG: urgent socket condition"},
30	/* 22 */ {_SigNotify, "SIGPOLL: pollable event occurred"},
31	/* 23 */ {0, "SIGSTOP: stop (cannot be caught or ignored)"},
32	/* 24 */ {_SigNotify + _SigDefault + _SigIgn, "SIGTSTP: user stop requested from tty"},
33	/* 25 */ {_SigNotify + _SigDefault + _SigIgn, "SIGCONT: stopped process has been continued"},
34	/* 26 */ {_SigNotify + _SigDefault + _SigIgn, "SIGTTIN: background tty read attempted"},
35	/* 27 */ {_SigNotify + _SigDefault + _SigIgn, "SIGTTOU: background tty write attempted"},
36	/* 28 */ {_SigNotify, "SIGVTALRM: virtual timer expired"},
37	/* 29 */ {_SigNotify + _SigUnblock, "SIGPROF: profiling timer expired"},
38	/* 30 */ {_SigNotify, "SIGXCPU: exceeded cpu limit"},
39	/* 31 */ {_SigNotify, "SIGXFSZ: exceeded file size limit"},
40	/* 32 */ {_SigNotify, "SIGWAITING: reserved signal no longer used by"},
41	/* 33 */ {_SigNotify, "SIGLWP: reserved signal no longer used by"},
42	/* 34 */ {_SigNotify, "SIGFREEZE: special signal used by CPR"},
43	/* 35 */ {_SigNotify, "SIGTHAW: special signal used by CPR"},
44	/* 36 */ {_SigSetStack + _SigUnblock, "SIGCANCEL: reserved signal for thread cancellation"}, // Oracle's spelling of cancellation.
45	/* 37 */ {_SigNotify, "SIGLOST: resource lost (eg, record-lock lost)"},
46	/* 38 */ {_SigNotify, "SIGXRES: resource control exceeded"},
47	/* 39 */ {_SigNotify, "SIGJVM1: reserved signal for Java Virtual Machine"},
48	/* 40 */ {_SigNotify, "SIGJVM2: reserved signal for Java Virtual Machine"},
49
50	/* TODO(aram): what should be do about these signals? _SigDefault or _SigNotify? is this set static? */
51	/* 41 */ {_SigNotify, "real time signal"},
52	/* 42 */ {_SigNotify, "real time signal"},
53	/* 43 */ {_SigNotify, "real time signal"},
54	/* 44 */ {_SigNotify, "real time signal"},
55	/* 45 */ {_SigNotify, "real time signal"},
56	/* 46 */ {_SigNotify, "real time signal"},
57	/* 47 */ {_SigNotify, "real time signal"},
58	/* 48 */ {_SigNotify, "real time signal"},
59	/* 49 */ {_SigNotify, "real time signal"},
60	/* 50 */ {_SigNotify, "real time signal"},
61	/* 51 */ {_SigNotify, "real time signal"},
62	/* 52 */ {_SigNotify, "real time signal"},
63	/* 53 */ {_SigNotify, "real time signal"},
64	/* 54 */ {_SigNotify, "real time signal"},
65	/* 55 */ {_SigNotify, "real time signal"},
66	/* 56 */ {_SigNotify, "real time signal"},
67	/* 57 */ {_SigNotify, "real time signal"},
68	/* 58 */ {_SigNotify, "real time signal"},
69	/* 59 */ {_SigNotify, "real time signal"},
70	/* 60 */ {_SigNotify, "real time signal"},
71	/* 61 */ {_SigNotify, "real time signal"},
72	/* 62 */ {_SigNotify, "real time signal"},
73	/* 63 */ {_SigNotify, "real time signal"},
74	/* 64 */ {_SigNotify, "real time signal"},
75	/* 65 */ {_SigNotify, "real time signal"},
76	/* 66 */ {_SigNotify, "real time signal"},
77	/* 67 */ {_SigNotify, "real time signal"},
78	/* 68 */ {_SigNotify, "real time signal"},
79	/* 69 */ {_SigNotify, "real time signal"},
80	/* 70 */ {_SigNotify, "real time signal"},
81	/* 71 */ {_SigNotify, "real time signal"},
82	/* 72 */ {_SigNotify, "real time signal"},
83}
84