1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-01 10:06:57 +03:00
* sysdeps/unix/sysv/linux/sleep.c (__sleep): Use nanosleep syscall
	directly to avoid cancellation in the regular nanosleep
	implementation.
This commit is contained in:
Ulrich Drepper
2003-06-06 17:34:54 +00:00
parent 3a370de88f
commit c3f90e26a5
4 changed files with 28 additions and 12 deletions

View File

@ -26,12 +26,14 @@
/* We push lr onto the stack, so we have to use ldmib instead of ldmia
to find the saved arguments. */
#undef DOARGS_5
#undef DOARGS_6
#undef DOARGS_7
#define DOARGS_5 str r4, [sp, $-4]!; ldr r4, [sp, $8];
#define DOARGS_6 mov ip, sp; stmfd sp!, {r4, r5}; ldmib ip, {r4, r5};
#define DOARGS_7 mov ip, sp; stmfd sp!, {r4, r5, r6}; ldmib ip, {r4, r5, r6};
# ifdef PIC
# undef DOARGS_5
# undef DOARGS_6
# undef DOARGS_7
# define DOARGS_5 str r4, [sp, $-4]!; ldr r4, [sp, $8];
# define DOARGS_6 mov ip, sp; stmfd sp!, {r4, r5}; ldmib ip, {r4, r5};
# define DOARGS_7 mov ip, sp; stmfd sp!, {r4, r5, r6}; ldmib ip, {r4, r5, r6};
# endif
# undef PSEUDO_RET
# define PSEUDO_RET \