Back to index

glibc  2.9
Defines
sysdep.h File Reference
#include <sysdeps/unix/sysdep.h>
#include <sysdeps/ia64/sysdep.h>
#include <dl-sysdep.h>
#include <tls.h>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define GAS_ALIGN_BREAKS_UNWIND_INFO
#define SYS_ify(syscall_name)   __NR_syscall_name
#define __NR_semtimedop   1247
#define BREAK_INSN_1(num)   "break " #num ";;\n\t"
#define BREAK_INSN(num)   BREAK_INSN_1(num)
#define DO_INLINE_SYSCALL_NCS(name, nr, args...)
#define DO_INLINE_SYSCALL(name, nr, args...)   DO_INLINE_SYSCALL_NCS (__NR_##name, nr, ##args)
#define INLINE_SYSCALL(name, nr, args...)
#define INTERNAL_SYSCALL_DECL(err)   long int err
#define INTERNAL_SYSCALL_NCS(name, err, nr, args...)
#define INTERNAL_SYSCALL(name, err, nr, args...)   INTERNAL_SYSCALL_NCS (__NR_##name, err, nr, ##args)
#define INTERNAL_SYSCALL_ERROR_P(val, err)   (err == -1)
#define INTERNAL_SYSCALL_ERRNO(val, err)   (val)
#define LOAD_ARGS_0()
#define LOAD_REGS_0
#define LOAD_ARGS_1(a1)
#define LOAD_REGS_1
#define LOAD_ARGS_2(a1, a2)
#define LOAD_REGS_2
#define LOAD_ARGS_3(a1, a2, a3)
#define LOAD_REGS_3
#define LOAD_ARGS_4(a1, a2, a3, a4)
#define LOAD_REGS_4
#define LOAD_ARGS_5(a1, a2, a3, a4, a5)
#define LOAD_REGS_5
#define LOAD_ARGS_6(a1, a2, a3, a4, a5, a6)
#define LOAD_REGS_6
#define ASM_OUTARGS_0
#define ASM_OUTARGS_1   ASM_OUTARGS_0, "=r" (_out0)
#define ASM_OUTARGS_2   ASM_OUTARGS_1, "=r" (_out1)
#define ASM_OUTARGS_3   ASM_OUTARGS_2, "=r" (_out2)
#define ASM_OUTARGS_4   ASM_OUTARGS_3, "=r" (_out3)
#define ASM_OUTARGS_5   ASM_OUTARGS_4, "=r" (_out4)
#define ASM_OUTARGS_6   ASM_OUTARGS_5, "=r" (_out5)
#define ASM_ARGS_0
#define ASM_ARGS_1   ASM_ARGS_0, "3" (_out0)
#define ASM_ARGS_2   ASM_ARGS_1, "4" (_out1)
#define ASM_ARGS_3   ASM_ARGS_2, "5" (_out2)
#define ASM_ARGS_4   ASM_ARGS_3, "6" (_out3)
#define ASM_ARGS_5   ASM_ARGS_4, "7" (_out4)
#define ASM_ARGS_6   ASM_ARGS_5, "8" (_out5)
#define ASM_CLOBBERS_0   ASM_CLOBBERS_1, "out0"
#define ASM_CLOBBERS_1   ASM_CLOBBERS_2, "out1"
#define ASM_CLOBBERS_2   ASM_CLOBBERS_3, "out2"
#define ASM_CLOBBERS_3   ASM_CLOBBERS_4, "out3"
#define ASM_CLOBBERS_4   ASM_CLOBBERS_5, "out4"
#define ASM_CLOBBERS_5   ASM_CLOBBERS_6, "out5"
#define ASM_CLOBBERS_6_COMMON
#define ASM_CLOBBERS_6   ASM_CLOBBERS_6_COMMON , "b7"
#define PTR_MANGLE(var)   (var) = (void *) ((uintptr_t) (var) ^ THREAD_GET_POINTER_GUARD ())
#define PTR_DEMANGLE(var)   PTR_MANGLE (var)

Define Documentation

#define __NR_semtimedop   1247

Definition at line 61 of file sysdep.h.

#define ASM_ARGS_0

Definition at line 329 of file sysdep.h.

#define ASM_ARGS_1   ASM_ARGS_0, "3" (_out0)

Definition at line 330 of file sysdep.h.

#define ASM_ARGS_2   ASM_ARGS_1, "4" (_out1)

Definition at line 331 of file sysdep.h.

#define ASM_ARGS_3   ASM_ARGS_2, "5" (_out2)

Definition at line 332 of file sysdep.h.

#define ASM_ARGS_4   ASM_ARGS_3, "6" (_out3)

Definition at line 333 of file sysdep.h.

#define ASM_ARGS_5   ASM_ARGS_4, "7" (_out4)

Definition at line 334 of file sysdep.h.

#define ASM_ARGS_6   ASM_ARGS_5, "8" (_out5)

Definition at line 335 of file sysdep.h.

#define ASM_CLOBBERS_0   ASM_CLOBBERS_1, "out0"

Definition at line 338 of file sysdep.h.

#define ASM_CLOBBERS_1   ASM_CLOBBERS_2, "out1"

Definition at line 339 of file sysdep.h.

#define ASM_CLOBBERS_2   ASM_CLOBBERS_3, "out2"

Definition at line 340 of file sysdep.h.

#define ASM_CLOBBERS_3   ASM_CLOBBERS_4, "out3"

Definition at line 341 of file sysdep.h.

#define ASM_CLOBBERS_4   ASM_CLOBBERS_5, "out4"

Definition at line 342 of file sysdep.h.

#define ASM_CLOBBERS_5   ASM_CLOBBERS_6, "out5"

Definition at line 343 of file sysdep.h.

Definition at line 359 of file sysdep.h.

Value:
, "out6", "out7",                  \
  /* Non-stacked integer registers, minus r8, r10, r15.  */           \
  "r2", "r3", "r9", "r11", "r12", "r13", "r14", "r16", "r17", "r18",  \
  "r19", "r20", "r21", "r22", "r23", "r24", "r25", "r26", "r27",      \
  "r28", "r29", "r30", "r31",                                         \
  /* Predicate registers.  */                                         \
  "p6", "p7", "p8", "p9", "p10", "p11", "p12", "p13", "p14", "p15",   \
  /* Non-rotating fp registers.  */                                   \
  "f6", "f7", "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15",   \
  /* Branch registers.  */                                     \
  "b6"

Definition at line 344 of file sysdep.h.

#define ASM_OUTARGS_0

Definition at line 312 of file sysdep.h.

#define ASM_OUTARGS_1   ASM_OUTARGS_0, "=r" (_out0)

Definition at line 313 of file sysdep.h.

#define ASM_OUTARGS_2   ASM_OUTARGS_1, "=r" (_out1)

Definition at line 314 of file sysdep.h.

#define ASM_OUTARGS_3   ASM_OUTARGS_2, "=r" (_out2)

Definition at line 315 of file sysdep.h.

#define ASM_OUTARGS_4   ASM_OUTARGS_3, "=r" (_out3)

Definition at line 316 of file sysdep.h.

#define ASM_OUTARGS_5   ASM_OUTARGS_4, "=r" (_out4)

Definition at line 317 of file sysdep.h.

#define ASM_OUTARGS_6   ASM_OUTARGS_5, "=r" (_out5)

Definition at line 318 of file sysdep.h.

#define BREAK_INSN (   num)    BREAK_INSN_1(num)

Definition at line 190 of file sysdep.h.

#define BREAK_INSN_1 (   num)    "break " #num ";;\n\t"

Definition at line 189 of file sysdep.h.

#define DO_INLINE_SYSCALL (   name,
  nr,
  args... 
)    DO_INLINE_SYSCALL_NCS (__NR_##name, nr, ##args)

Definition at line 241 of file sysdep.h.

#define DO_INLINE_SYSCALL_NCS (   name,
  nr,
  args... 
)
Value:
LOAD_ARGS_##nr (args)                                   \
    register long _r8 asm ("r8");                       \
    register long _r10 asm ("r10");                            \
    register long _r15 asm ("r15") = name;                     \
    long _retval;                                       \
    LOAD_REGS_##nr                                      \
    __asm __volatile (BREAK_INSN (__BREAK_SYSCALL)             \
                    : "=r" (_r8), "=r" (_r10), "=r" (_r15)     \
                     ASM_OUTARGS_##nr                   \
                    : "2" (_r15) ASM_ARGS_##nr          \
                    : "memory" ASM_CLOBBERS_##nr);             \
    _retval = _r8;

Definition at line 225 of file sysdep.h.

Definition at line 35 of file sysdep.h.

#define INLINE_SYSCALL (   name,
  nr,
  args... 
)
Value:
({                                               \
    DO_INLINE_SYSCALL_NCS (__NR_##name, nr, args)       \
    if (_r10 == -1)                              \
      {                                                 \
       __set_errno (_retval);                           \
       _retval = -1;                             \
      }                                                 \
    _retval; })

Definition at line 245 of file sysdep.h.

#define INTERNAL_SYSCALL (   name,
  err,
  nr,
  args... 
)    INTERNAL_SYSCALL_NCS (__NR_##name, err, nr, ##args)

Definition at line 264 of file sysdep.h.

#define INTERNAL_SYSCALL_DECL (   err)    long int err

Definition at line 256 of file sysdep.h.

#define INTERNAL_SYSCALL_ERRNO (   val,
  err 
)    (val)

Definition at line 271 of file sysdep.h.

#define INTERNAL_SYSCALL_ERROR_P (   val,
  err 
)    (err == -1)

Definition at line 268 of file sysdep.h.

#define INTERNAL_SYSCALL_NCS (   name,
  err,
  nr,
  args... 
)
Value:
({                                               \
    DO_INLINE_SYSCALL_NCS (name, nr, args)              \
    err = _r10;                                         \
    _retval; })

Definition at line 259 of file sysdep.h.

#define LOAD_ARGS_0 ( )

Definition at line 273 of file sysdep.h.

#define LOAD_ARGS_1 (   a1)
Value:
long _arg1 = (long) (a1);                        \
  LOAD_ARGS_0 ()

Definition at line 275 of file sysdep.h.

#define LOAD_ARGS_2 (   a1,
  a2 
)
Value:
long _arg2 = (long) (a2);                        \
  LOAD_ARGS_1 (a1)

Definition at line 281 of file sysdep.h.

#define LOAD_ARGS_3 (   a1,
  a2,
  a3 
)
Value:
long _arg3 = (long) (a3);                        \
  LOAD_ARGS_2 (a1, a2)

Definition at line 287 of file sysdep.h.

#define LOAD_ARGS_4 (   a1,
  a2,
  a3,
  a4 
)
Value:
long _arg4 = (long) (a4);                        \
  LOAD_ARGS_3 (a1, a2, a3)

Definition at line 293 of file sysdep.h.

#define LOAD_ARGS_5 (   a1,
  a2,
  a3,
  a4,
  a5 
)
Value:
long _arg5 = (long) (a5);                        \
  LOAD_ARGS_4 (a1, a2, a3, a4)

Definition at line 299 of file sysdep.h.

#define LOAD_ARGS_6 (   a1,
  a2,
  a3,
  a4,
  a5,
  a6 
)
Value:
long _arg6 = (long) (a6);                        \
  LOAD_ARGS_5 (a1, a2, a3, a4, a5)

Definition at line 305 of file sysdep.h.

#define LOAD_REGS_0

Definition at line 274 of file sysdep.h.

#define LOAD_REGS_1
Value:
register long _out0 asm ("out0") = _arg1;        \
  LOAD_REGS_0

Definition at line 278 of file sysdep.h.

#define LOAD_REGS_2
Value:
register long _out1 asm ("out1") = _arg2;        \
  LOAD_REGS_1

Definition at line 284 of file sysdep.h.

#define LOAD_REGS_3
Value:
register long _out2 asm ("out2") = _arg3;        \
  LOAD_REGS_2

Definition at line 290 of file sysdep.h.

#define LOAD_REGS_4
Value:
register long _out3 asm ("out3") = _arg4;        \
  LOAD_REGS_3

Definition at line 296 of file sysdep.h.

#define LOAD_REGS_5
Value:
register long _out4 asm ("out4") = _arg5;        \
  LOAD_REGS_4

Definition at line 302 of file sysdep.h.

#define LOAD_REGS_6
Value:
register long _out5 asm ("out5") = _arg6;        \
  LOAD_REGS_5

Definition at line 308 of file sysdep.h.

#define PTR_DEMANGLE (   var)    PTR_MANGLE (var)

Definition at line 380 of file sysdep.h.

#define PTR_MANGLE (   var)    (var) = (void *) ((uintptr_t) (var) ^ THREAD_GET_POINTER_GUARD ())

Definition at line 378 of file sysdep.h.

#define SYS_ify (   syscall_name)    __NR_syscall_name

Definition at line 45 of file sysdep.h.