mirror of
https://sourceware.org/git/glibc.git
synced 2025-12-24 17:51:17 +03:00
Update.
2003-05-30 Andreas Jaeger <aj@suse.de> * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add CFI directives. * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI directives. * sysdeps/generic/sysdep.h: Add CFI_* macros for C files. * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add CFI directives.
This commit is contained in:
@@ -97,14 +97,15 @@ weak_alias (__libc_sigaction, sigaction)
|
||||
appropriate GDB maintainer. */
|
||||
|
||||
#define RESTORE(name, syscall) RESTORE2 (name, syscall)
|
||||
#define RESTORE2(name, syscall) \
|
||||
# define RESTORE2(name, syscall) \
|
||||
asm \
|
||||
( \
|
||||
".align 16\n" \
|
||||
CFI_STARTPROC "\n" \
|
||||
"__" #name ":\n" \
|
||||
" movq $" #syscall ", %rax\n" \
|
||||
" syscall\n" \
|
||||
CFI_ENDPROC "\n" \
|
||||
);
|
||||
|
||||
/* The return code for realtime-signals. */
|
||||
RESTORE (restore_rt, __NR_rt_sigreturn)
|
||||
|
||||
@@ -132,11 +132,13 @@
|
||||
0: \
|
||||
xorq %rdx, %rdx; \
|
||||
subq %rax, %rdx; \
|
||||
pushq %rdx \
|
||||
pushq %rdx; \
|
||||
cfi_adjust_cfa_offset(8); \
|
||||
PUSH_ERRNO_LOCATION_RETURN; \
|
||||
call BP_SYM (__errno_location)@PLT; \
|
||||
POP_ERRNO_LOCATION_RETURN; \
|
||||
popq %rdx; \
|
||||
cfi_adjust_cfa_offset(-8); \
|
||||
movl %edx, (%rax); \
|
||||
orq $-1, %rax; \
|
||||
jmp L(pseudo_end);
|
||||
|
||||
Reference in New Issue
Block a user