diff options
author | Ulrich Drepper <drepper@redhat.com> | 2000-09-29 16:45:44 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2000-09-29 16:45:44 +0000 |
commit | 3107c0c5ae2c0dc2854471cb028e8a37a5e59e51 (patch) | |
tree | f21aa4585bc849d943a0211b34b6aed61d00376f /sysdeps/unix/sysv/linux/ia64/sysdep.h | |
parent | 062a2a18f425f8b6c667b7239afeed2dd80d5e45 (diff) | |
download | glibc-3107c0c5ae2c0dc2854471cb028e8a37a5e59e51.tar.gz glibc-3107c0c5ae2c0dc2854471cb028e8a37a5e59e51.tar.xz glibc-3107c0c5ae2c0dc2854471cb028e8a37a5e59e51.zip |
Update.
2000-09-29 David Mosberger <davidm@hpl.hp.com> * sysdeps/unix/sysv/linux/ia64/sysdep.S (__ia64_syscall): Cleanup. * sysdeps/unix/sysv/linux/ia64/sysdep.h (CALL_MCOUNT): Implement. 2000-06-10 David Mosberger <davidm@hpl.hp.com> * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix it so it actually works: call to __sigjmp_save must be done unconditionally to ensure jmp_buf is initialized properly. 2000-09-27 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Synch with Linux 2.4.0-test9-pre7. 2000-09-29 Jakub Jelinek <jakub@redhat.com> * nscd/nscd-client.h (NSCD_VERSION): Bump to 3. Use int32_t where appropriate. * nscd/nscd_gethst_r.c (nscd_gethst_r): Use uint32_t instead of size_t where appropriate. * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise. * nscd/hstcache.c (cache_addhst): Likewise. * nscd/grpcache.c (cache_addgr): Likewise.
Diffstat (limited to 'sysdeps/unix/sysv/linux/ia64/sysdep.h')
-rw-r--r-- | sysdeps/unix/sysv/linux/ia64/sysdep.h | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/sysdeps/unix/sysv/linux/ia64/sysdep.h b/sysdeps/unix/sysv/linux/ia64/sysdep.h index bb4ab29eba..5f7f3fe3eb 100644 --- a/sysdeps/unix/sysv/linux/ia64/sysdep.h +++ b/sysdeps/unix/sysv/linux/ia64/sysdep.h @@ -34,6 +34,23 @@ #ifdef __ASSEMBLER__ +#undef CALL_MCOUNT +#ifdef PROF +# define CALL_MCOUNT \ + .data; \ +1: data8 0; \ + .previous; \ + alloc out0 = ar.pfs, 8, 0, 4, 0; \ + mov out1 = gp; \ + mov out2 = rp; \ + ;; \ + addl out3 = @ltoff(1b), gp; \ + br.call.sptk.many rp = _mcount \ + ;; +#else +# define CALL_MCOUNT /* Do nothing. */ +#endif + /* Linux uses a negative return value to indicate syscall errors, unlike most Unices, which use the condition codes' carry flag. @@ -48,13 +65,6 @@ table when we define it here. */ #define SYSCALL_ERROR_LABEL __syscall_error -#ifdef PROF -#error "define CALL_MCOUNT" -#else -#define CALL_MCOUNT -#endif - - #undef PSEUDO #define PSEUDO(name, syscall_name, args) \ ENTRY(name) \ |