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   stw 3,20(1); DOCARGS_0
#define UNDOCARGS_1   lwz 3,20(1); UNDOCARGS_0
#define DOCARGS_2   stw 4,24(1); DOCARGS_1
#define UNDOCARGS_2   lwz 4,24(1); UNDOCARGS_1
#define DOCARGS_3   stw 5,28(1); DOCARGS_2
#define UNDOCARGS_3   lwz 5,28(1); UNDOCARGS_2
#define DOCARGS_4   stw 6,32(1); DOCARGS_3
#define UNDOCARGS_4   lwz 6,32(1); UNDOCARGS_3
#define DOCARGS_5   stw 7,36(1); DOCARGS_4
#define UNDOCARGS_5   lwz 7,36(1); UNDOCARGS_4
#define DOCARGS_6   stw 8,40(1); DOCARGS_5
#define UNDOCARGS_6   lwz 8,40(1); UNDOCARGS_5
#define CGOTSETUP
#define CGOTRESTORE
#define CENABLE   bl __libc_enable_asynccancel@local
#define CDISABLE   bl __libc_disable_asynccancel@local
#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 117 of file sysdep-cancel.h.

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

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

#define CGOTRESTORE

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

#define CGOTSETUP

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

#define DOCARGS_0

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

#define DOCARGS_1   stw 3,20(1); DOCARGS_0

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

#define DOCARGS_2   stw 4,24(1); DOCARGS_1

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

#define DOCARGS_3   stw 5,28(1); DOCARGS_2

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

#define DOCARGS_4   stw 6,32(1); DOCARGS_3

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

#define DOCARGS_5   stw 7,36(1); DOCARGS_4

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

#define DOCARGS_6   stw 8,40(1); DOCARGS_5

Definition at line 77 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:                                             \
    stwu 1,-48(1);                                             \
    mflr 9;                                                    \
    stw 9,52(1);                                               \
    CGOTSETUP;                                                        \
    DOCARGS_##args;  /* save syscall args around CENABLE.  */  \
    CENABLE;                                                   \
    stw 3,16(1);     /* store CENABLE return value (MASK).  */ \
    UNDOCARGS_##args;       /* restore syscall args.  */                     \
    DO_CALL (SYS_ify (syscall_name));                                 \
    mfcr 0;          /* save CR/R3 around CDISABLE.  */        \
    stw 3,8(1);                                                       \
    stw 0,12(1);                                               \
    lwz 3,16(1);     /* pass MASK to CDISABLE.  */                    \
    CDISABLE;                                                  \
    lwz 4,52(1);                                               \
    lwz 0,12(1);     /* restore CR/R3. */                      \
    lwz 3,8(1);                                                       \
    CGOTRESTORE;                                               \
    mtlr 4;                                                    \
    mtcr 0;                                                    \
    addi 1,1,48;

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

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

#define UNDOCARGS_0

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

#define UNDOCARGS_1   lwz 3,20(1); UNDOCARGS_0

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

#define UNDOCARGS_2   lwz 4,24(1); UNDOCARGS_1

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

#define UNDOCARGS_3   lwz 5,28(1); UNDOCARGS_2

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

#define UNDOCARGS_4   lwz 6,32(1); UNDOCARGS_3

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

#define UNDOCARGS_5   lwz 7,36(1); UNDOCARGS_4

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

#define UNDOCARGS_6   lwz 8,40(1); UNDOCARGS_5

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


Variable Documentation

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