diff options
| author | Tobias Anderberg <tobias.anderberg@axis.com> | 2002-09-20 15:17:16 +0000 | 
|---|---|---|
| committer | Tobias Anderberg <tobias.anderberg@axis.com> | 2002-09-20 15:17:16 +0000 | 
| commit | cb9136d9843e3756ebc79f91a3a522ed4ca73eda (patch) | |
| tree | 32c4645d05a7b4d7ec5b56abeb6f837c574e3af8 /libc/sysdeps/linux/cris/sysdep.h | |
| parent | 750c0194b0b645120ddccf25b82848b06be6cdc2 (diff) | |
| download | uClibc-alpine-cb9136d9843e3756ebc79f91a3a522ed4ca73eda.tar.bz2 uClibc-alpine-cb9136d9843e3756ebc79f91a3a522ed4ca73eda.tar.xz  | |
* Added clone() system call.
* Proper implementation of bits/syscalls.h, no cheating by just including
  <asm/unistd.h>.
* Proper implementation of syscall.S, it no longer contains the
  __syscall_error, instead it contains code which makes syscall(nr,...) a
  system call.
* Added sysdep.S which contains the code for __syscall_error.
* Added some macros to sysdep.h.
* Added sys/procfs.h, which is needed when compiling with thread support.
* Removed unused syscall-cris.c.
Diffstat (limited to 'libc/sysdeps/linux/cris/sysdep.h')
| -rw-r--r-- | libc/sysdeps/linux/cris/sysdep.h | 16 | 
1 files changed, 16 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/cris/sysdep.h b/libc/sysdeps/linux/cris/sysdep.h index e01752ae9..2068557c5 100644 --- a/libc/sysdeps/linux/cris/sysdep.h +++ b/libc/sysdeps/linux/cris/sysdep.h @@ -91,6 +91,22 @@  #define END(name) \    ASM_SIZE_DIRECTIVE (C_SYMBOL_NAME (name)) +#define PSEUDO(name, syscall_name, args) \ +  ENTRY (name)                      @ \ +  DOARGS_##args                     @ \ +  movu.w SYS_ify (syscall_name),$r9         @ \ +  break 13                      @ \ +  cmps.w -4096,$r10                 @ \ +  bhs   0f                      @ \ +  nop                           @ \ +  UNDOARGS_return_##args + +#define PSEUDO_END(name) \ +0:                          @ \ +  SETUP_PIC                     @ \ +  PLTJUMP (syscall_error)               @ \ +  END (name) +  /* If compiled for profiling, call `mcount' at the start of each function.     FIXME: Note that profiling is not actually implemented.  This is just     example code which might not even compile, though it is believed to be  | 
