diff options
author | Richard Henderson <rth@redhat.com> | 2003-06-06 05:51:03 +0000 |
---|---|---|
committer | Richard Henderson <rth@redhat.com> | 2003-06-06 05:51:03 +0000 |
commit | 63e1f70d4dcc68de6c6c31a3878bd319e9d79f81 (patch) | |
tree | 16bb7b68fd554326f6c498265c4929218bef9ec1 /linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S | |
parent | 6f1e513dbbd1f786d93a6e402f2b23f4e0814a9d (diff) | |
download | glibc-63e1f70d4dcc68de6c6c31a3878bd319e9d79f81.tar.gz |
* sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h (PSEUDO): Use and require CFI assembler directives. * sysdeps/unix/sysv/linux/alpha/vfork.S: Likewise.
2003-06-05 Richard Henderson <rth@redhat.com>
* sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h (PSEUDO): Use
and require CFI assembler directives.
* sysdeps/unix/sysv/linux/alpha/vfork.S: Likewise.
Diffstat (limited to 'linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S')
-rw-r--r-- | linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S b/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S index b4f35e1a67..cfaae10606 100644 --- a/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S +++ b/linuxthreads/sysdeps/unix/sysv/linux/alpha/vfork.S @@ -19,12 +19,13 @@ #include <sysdep-cancel.h> - .globl __vfork .align 4 - .ent __vfork,0 -__LABEL(__vfork) + .globl __vfork + .type __vfork, @function + .usepv __vfork, std + cfi_startproc +__vfork: ldgp gp, 0(pv) - .prologue 1 PSEUDO_PROF #ifdef SHARED @@ -46,18 +47,24 @@ __LABEL(__vfork) fork and vfork object files. */ $do_fork: subq sp, 16, sp + cfi_adjust_cfa_offset(16) stq ra, 0(sp) + cfi_offset(ra, -16) jsr ra, HIDDEN_JUMPTARGET (__fork) ldgp gp, 0(ra) ldq ra, 0(sp) addq sp, 16, sp + cfi_restore(ra) + cfi_adjust_cfa_offset(-16) ret $syscall_error: SYSCALL_ERROR_HANDLER #endif -PSEUDO_END(__vfork) + cfi_endproc + .size __vfork, .-__vfork + libc_hidden_def (__vfork) weak_alias (__vfork, vfork) |