Back to index

glibc  2.9
Defines | Variables
sysdep-cancel.h File Reference
#include <sysdep.h>
#include <tls.h>
#include <linuxthreads/internals.h>

Go to the source code of this file.

Defines

#define PSEUDO(name, syscall_name, args)
#define DOCARGS_0
#define UNDOCARGS_0
#define DOCARGS_1   std 3,80(1); DOCARGS_0
#define UNDOCARGS_1   ld 3,80(1); UNDOCARGS_0
#define DOCARGS_2   std 4,88(1); DOCARGS_1
#define UNDOCARGS_2   ld 4,88(1); UNDOCARGS_1
#define DOCARGS_3   std 5,96(1); DOCARGS_2
#define UNDOCARGS_3   ld 5,96(1); UNDOCARGS_2
#define DOCARGS_4   std 6,104(1); DOCARGS_3
#define UNDOCARGS_4   ld 6,104(1); UNDOCARGS_3
#define DOCARGS_5   std 7,112(1); DOCARGS_4
#define UNDOCARGS_5   ld 7,112(1); UNDOCARGS_4
#define DOCARGS_6   std 8,120(1); DOCARGS_5
#define UNDOCARGS_6   ld 8,120(1); UNDOCARGS_5
#define CENABLE   bl JUMPTARGET(__libc_enable_asynccancel)
#define CDISABLE   bl JUMPTARGET(__libc_disable_asynccancel)
#define __local_multiple_threads   __libc_multiple_threads
#define SINGLE_THREAD_P   __builtin_expect (__local_multiple_threads == 0, 1)

Variables

int __local_multiple_threads attribute_hidden

Define Documentation

#define __local_multiple_threads   __libc_multiple_threads

Definition at line 85 of file sysdep-cancel.h.

Definition at line 84 of file sysdep-cancel.h.

Definition at line 83 of file sysdep-cancel.h.

#define DOCARGS_0

Definition at line 57 of file sysdep-cancel.h.

#define DOCARGS_1   std 3,80(1); DOCARGS_0

Definition at line 60 of file sysdep-cancel.h.

#define DOCARGS_2   std 4,88(1); DOCARGS_1

Definition at line 63 of file sysdep-cancel.h.

#define DOCARGS_3   std 5,96(1); DOCARGS_2

Definition at line 66 of file sysdep-cancel.h.

#define DOCARGS_4   std 6,104(1); DOCARGS_3

Definition at line 69 of file sysdep-cancel.h.

#define DOCARGS_5   std 7,112(1); DOCARGS_4

Definition at line 72 of file sysdep-cancel.h.

#define DOCARGS_6   std 8,120(1); DOCARGS_5

Definition at line 75 of file sysdep-cancel.h.

#define PSEUDO (   name,
  syscall_name,
  args 
)
Value:
.section ".text";                                              \
  ENTRY (name)                                                        \
    SINGLE_THREAD_P;                                           \
    bne- .Lpseudo_cancel;                                      \
    DO_CALL (SYS_ify (syscall_name));                                 \
    PSEUDO_RET;                                                       \
  .Lpseudo_cancel:                                             \
    stdu 1,-128(1);                                            \
    mflr 9;                                                    \
    std  9,128+16(1);                                                 \
    DOCARGS_##args;  /* save syscall args around CENABLE.  */  \
    CENABLE;                                                   \
    std  3,72(1);    /* store CENABLE return value (MASK).  */ \
    UNDOCARGS_##args;       /* restore syscall args.  */                     \
    DO_CALL (SYS_ify (syscall_name));                                 \
    mfcr 0;          /* save CR/R3 around CDISABLE.  */        \
    std  3,64(1);                                                     \
    std  0,8(1);                                               \
    ld   3,72(1);    /* pass MASK to CDISABLE.  */                    \
    CDISABLE;                                                  \
    ld   9,128+16(1);                                                 \
    ld   0,8(1);     /* restore CR/R3. */                      \
    ld   3,64(1);                                                     \
    mtlr 9;                                                    \
    mtcr 0;                                                    \
    addi 1,1,128;

Definition at line 29 of file sysdep-cancel.h.

Definition at line 109 of file sysdep-cancel.h.

#define UNDOCARGS_0

Definition at line 58 of file sysdep-cancel.h.

#define UNDOCARGS_1   ld 3,80(1); UNDOCARGS_0

Definition at line 61 of file sysdep-cancel.h.

#define UNDOCARGS_2   ld 4,88(1); UNDOCARGS_1

Definition at line 64 of file sysdep-cancel.h.

#define UNDOCARGS_3   ld 5,96(1); UNDOCARGS_2

Definition at line 67 of file sysdep-cancel.h.

#define UNDOCARGS_4   ld 6,104(1); UNDOCARGS_3

Definition at line 70 of file sysdep-cancel.h.

#define UNDOCARGS_5   ld 7,112(1); UNDOCARGS_4

Definition at line 73 of file sysdep-cancel.h.

#define UNDOCARGS_6   ld 8,120(1); UNDOCARGS_5

Definition at line 76 of file sysdep-cancel.h.


Variable Documentation

Definition at line 25 of file init-first.c.