OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gdb/] [gdb-6.8/] [sim/] [testsuite/] [sim/] [cris/] [c/] [rtsigprocmask1.c] - Blame information for rev 26

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 26 jlechner
/* Compiler options:
2
#notarget: cris*-*-elf
3
#cc: additional_flags=-pthread
4
#xerror:
5
#output: Unimplemented rt_sigprocmask syscall (0x3, 0x0, 0x3dff*\n
6
#output: program stopped with signal 4.\n
7
 
8
   Testing a signal handler corner case.  */
9
 
10
#include <stddef.h>
11
#include <stdlib.h>
12
#include <stdio.h>
13
#include <unistd.h>
14
#include <signal.h>
15
#include <pthread.h>
16
#include <errno.h>
17
 
18
static void *
19
process (void *arg)
20
{
21
  while (1)
22
    sched_yield ();
23
  return NULL;
24
}
25
 
26
int
27
main (void)
28
{
29
  int retcode;
30
  pthread_t th_a;
31
  void *retval;
32
  sigset_t sigs;
33
 
34
  if (sigemptyset (&sigs) != 0)
35
    abort ();
36
 
37
  retcode = pthread_create (&th_a, NULL, process, NULL);
38
  if (retcode != 0)
39
    abort ();
40
 
41
  /* An invalid parameter 1 should cause this to halt the simulator.  */
42
  retcode
43
    = pthread_sigmask (SIG_BLOCK + SIG_UNBLOCK + SIG_SETMASK, NULL, &sigs);
44
  /* Direct return of the error number; i.e. not using -1 and errno,
45
     is the actual documented behavior.  */
46
  if (retcode == ENOSYS)
47
    printf ("ENOSYS\n");
48
 
49
  printf ("xyzzy\n");
50
  return 0;
51
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.