1 /* This testcase is part of GDB, the GNU debugger.
3 Copyright 2009 Free Software Foundation, Inc.
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */
22 #define signal(a,b) /* Signals not supported on this target - make them go away */
25 /* Signal handlers, we set breakpoints in them to make sure that the
26 signals really get delivered. */
104 handle_TTIN (int sig
)
109 handle_TTOU (int sig
)
119 handle_XCPU (int sig
)
124 handle_XFSZ (int sig
)
129 handle_VTALRM (int sig
)
134 handle_PROF (int sig
)
139 handle_WINCH (int sig
)
144 handle_LOST (int sig
)
149 handle_USR1 (int sig
)
154 handle_USR2 (int sig
)
164 handle_POLL (int sig
)
169 handle_WIND (int sig
)
174 handle_PHONE (int sig
)
179 handle_WAITING (int sig
)
189 handle_DANGER (int sig
)
194 handle_GRANT (int sig
)
199 handle_RETRACT (int sig
)
209 handle_SOUND (int sig
)
219 handle_PRIO (int sig
)
379 handle_TERM (int sig
)
383 /* Functions to send signals. These also serve as markers. */
387 kill (getpid (), SIGABRT
);
395 kill (getpid (), SIGHUP
);
406 kill (getpid (), SIGQUIT
);
417 kill (getpid (), SIGILL
);
428 kill (getpid (), SIGEMT
);
440 /* The intent behind generating SIGFPE this way is to check the mapping
441 from the CPU exception itself to the signals. It would be nice to
442 do the same for SIGBUS, SIGSEGV, etc., but I suspect that even this
443 test might turn out to be insufficiently portable. */
446 /* Loses on the PA because after the signal handler executes we try to
447 re-execute the failing instruction again. Perhaps we could siglongjmp
448 out of the signal handler? */
449 /* The expect script looks for the word "kill"; don't delete it. */
450 return 5 / x
; /* and we both started jumping up and down yelling kill */
452 kill (getpid (), SIGFPE
);
461 kill (getpid (), SIGBUS
);
472 kill (getpid (), SIGSEGV
);
483 kill (getpid (), SIGSYS
);
494 kill (getpid (), SIGPIPE
);
505 kill (getpid (), SIGALRM
);
516 kill (getpid (), SIGURG
);
527 kill (getpid (), SIGTSTP
);
538 kill (getpid (), SIGCONT
);
549 kill (getpid (), SIGCHLD
);
560 kill (getpid (), SIGTTIN
);
571 kill (getpid (), SIGTTOU
);
582 kill (getpid (), SIGIO
);
593 kill (getpid (), SIGXCPU
);
604 kill (getpid (), SIGXFSZ
);
615 kill (getpid (), SIGVTALRM
);
626 kill (getpid (), SIGPROF
);
637 kill (getpid (), SIGWINCH
);
647 #if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
648 kill (getpid (), SIGLOST
);
659 kill (getpid (), SIGUSR1
);
670 kill (getpid (), SIGUSR2
);
681 kill (getpid (), SIGPWR
);
691 #if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
692 kill (getpid (), SIGPOLL
);
703 kill (getpid (), SIGWIND
);
714 kill (getpid (), SIGPHONE
);
725 kill (getpid (), SIGWAITING
);
736 kill (getpid (), SIGLWP
);
747 kill (getpid (), SIGDANGER
);
758 kill (getpid (), SIGGRANT
);
769 kill (getpid (), SIGRETRACT
);
780 kill (getpid (), SIGMSG
);
791 kill (getpid (), SIGSOUND
);
802 kill (getpid (), SIGSAK
);
813 kill (getpid (), SIGPRIO
);
824 kill (getpid (), 33);
835 kill (getpid (), 34);
846 kill (getpid (), 35);
857 kill (getpid (), 36);
868 kill (getpid (), 37);
879 kill (getpid (), 38);
890 kill (getpid (), 39);
901 kill (getpid (), 40);
912 kill (getpid (), 41);
923 kill (getpid (), 42);
934 kill (getpid (), 43);
945 kill (getpid (), 44);
956 kill (getpid (), 45);
967 kill (getpid (), 46);
978 kill (getpid (), 47);
989 kill (getpid (), 48);
1000 kill (getpid (), 49);
1011 kill (getpid (), 50);
1022 kill (getpid (), 51);
1033 kill (getpid (), 52);
1044 kill (getpid (), 53);
1055 kill (getpid (), 54);
1066 kill (getpid (), 55);
1077 kill (getpid (), 56);
1088 kill (getpid (), 57);
1099 kill (getpid (), 58);
1110 kill (getpid (), 59);
1121 kill (getpid (), 60);
1132 kill (getpid (), 61);
1143 kill (getpid (), 62);
1154 kill (getpid (), 63);
1164 kill (getpid (), SIGTERM
);
1177 /* Ensure all the signals aren't blocked.
1178 The environment in which the testsuite is run may have blocked some
1179 for whatever reason. */
1182 sigemptyset (&newset
);
1183 sigprocmask (SIG_SETMASK
, &newset
, NULL
);
1187 signal (SIGABRT
, handle_ABRT
);
1189 signal (SIGHUP
, handle_HUP
);
1192 signal (SIGQUIT
, handle_QUIT
);
1195 signal (SIGILL
, handle_ILL
);
1198 signal (SIGEMT
, handle_EMT
);
1201 signal (SIGFPE
, handle_FPE
);
1204 signal (SIGBUS
, handle_BUS
);
1207 signal (SIGSEGV
, handle_SEGV
);
1210 signal (SIGSYS
, handle_SYS
);
1213 signal (SIGPIPE
, handle_PIPE
);
1216 signal (SIGALRM
, handle_ALRM
);
1219 signal (SIGURG
, handle_URG
);
1222 signal (SIGTSTP
, handle_TSTP
);
1225 signal (SIGCONT
, handle_CONT
);
1228 signal (SIGCHLD
, handle_CHLD
);
1231 signal (SIGTTIN
, handle_TTIN
);
1234 signal (SIGTTOU
, handle_TTOU
);
1237 signal (SIGIO
, handle_IO
);
1240 signal (SIGXCPU
, handle_XCPU
);
1243 signal (SIGXFSZ
, handle_XFSZ
);
1246 signal (SIGVTALRM
, handle_VTALRM
);
1249 signal (SIGPROF
, handle_PROF
);
1252 signal (SIGWINCH
, handle_WINCH
);
1254 #if defined(SIGLOST) && (!defined(SIGABRT) || SIGLOST != SIGABRT)
1255 signal (SIGLOST
, handle_LOST
);
1258 signal (SIGUSR1
, handle_USR1
);
1261 signal (SIGUSR2
, handle_USR2
);
1264 signal (SIGPWR
, handle_PWR
);
1266 #if defined (SIGPOLL) && (!defined (SIGIO) || SIGPOLL != SIGIO)
1267 signal (SIGPOLL
, handle_POLL
);
1270 signal (SIGWIND
, handle_WIND
);
1273 signal (SIGPHONE
, handle_PHONE
);
1276 signal (SIGWAITING
, handle_WAITING
);
1279 signal (SIGLWP
, handle_LWP
);
1282 signal (SIGDANGER
, handle_DANGER
);
1285 signal (SIGGRANT
, handle_GRANT
);
1288 signal (SIGRETRACT
, handle_RETRACT
);
1291 signal (SIGMSG
, handle_MSG
);
1294 signal (SIGSOUND
, handle_SOUND
);
1297 signal (SIGSAK
, handle_SAK
);
1300 signal (SIGPRIO
, handle_PRIO
);
1303 /* Lynx doesn't seem to have anything in signal.h for this. */
1304 signal (33, handle_33
);
1305 signal (34, handle_34
);
1306 signal (35, handle_35
);
1307 signal (36, handle_36
);
1308 signal (37, handle_37
);
1309 signal (38, handle_38
);
1310 signal (39, handle_39
);
1311 signal (40, handle_40
);
1312 signal (41, handle_41
);
1313 signal (42, handle_42
);
1314 signal (43, handle_43
);
1315 signal (44, handle_44
);
1316 signal (45, handle_45
);
1317 signal (46, handle_46
);
1318 signal (47, handle_47
);
1319 signal (48, handle_48
);
1320 signal (49, handle_49
);
1321 signal (50, handle_50
);
1322 signal (51, handle_51
);
1323 signal (52, handle_52
);
1324 signal (53, handle_53
);
1325 signal (54, handle_54
);
1326 signal (55, handle_55
);
1327 signal (56, handle_56
);
1328 signal (57, handle_57
);
1329 signal (58, handle_58
);
1330 signal (59, handle_59
);
1331 signal (60, handle_60
);
1332 signal (61, handle_61
);
1333 signal (62, handle_62
);
1334 signal (63, handle_63
);
1336 signal (SIGTERM
, handle_TERM
);
This page took 0.090063 seconds and 4 git commands to generate.