mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-08 17:42:12 +03:00
Update.
2002-02-01 Jakub Jelinek <jakub@redhat.com> * sysdeps/generic/ldsodefs.h (_dl_load_lock): Remove duplicate definition. * sysdeps/ia64/hp-timing.h: Move _dl_hp_timing_overhead in _rtld_global struct. * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise. * sysdeps/sparc/sparc64/hp-timing.c: Likewise. * sysdeps/sparc/sparc64/hp-timing.h: Likewise. * sysdeps/sparc/sparc64/Makefile: Make hp-timing static only. * sysdeps/unix/sysv/aix/init-first.c (_dl_fpu_control, _dl_fpu_control_set): Remove unused externs. * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Move procinfo related variables in _rtld_global struct. * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise. * sysdeps/unix/sysv/linux/init-first.c (_dl_fpu_control_set): Remove unused extern.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/* High precision, low overhead timing functions. sparcv9 version.
|
||||
Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by David S. Miller <davem@redhat.com>, 2001.
|
||||
|
||||
@@ -30,8 +30,6 @@
|
||||
|
||||
typedef unsigned long long int hp_timing_t;
|
||||
|
||||
extern hp_timing_t __libc_hp_timing_overhead;
|
||||
|
||||
#define HP_TIMING_ZERO(Var) (Var) = (0)
|
||||
|
||||
#define HP_TIMING_NOW(Var) \
|
||||
@@ -42,14 +40,14 @@ extern hp_timing_t __libc_hp_timing_overhead;
|
||||
#define HP_TIMING_DIFF_INIT() \
|
||||
do { \
|
||||
int __cnt = 5; \
|
||||
__libc_hp_timing_overhead = ~0ull; \
|
||||
GL(dl_hp_timing_overhead) = ~0ull; \
|
||||
do \
|
||||
{ \
|
||||
hp_timing_t __t1, __t2; \
|
||||
HP_TIMING_NOW (__t1); \
|
||||
HP_TIMING_NOW (__t2); \
|
||||
if (__t2 - __t1 < __libc_hp_timing_overhead) \
|
||||
__libc_hp_timing_overhead = __t2 - __t1; \
|
||||
if (__t2 - __t1 < GL(dl_hp_timing_overhead)) \
|
||||
GL(dl_hp_timing_overhead) = __t2 - __t1; \
|
||||
} \
|
||||
while (--__cnt > 0); \
|
||||
} while (0)
|
||||
@@ -58,7 +56,7 @@ extern hp_timing_t __libc_hp_timing_overhead;
|
||||
|
||||
#define HP_TIMING_ACCUM(Sum, Diff) \
|
||||
do { \
|
||||
hp_timing_t __diff = (Diff) - __libc_hp_timing_overhead; \
|
||||
hp_timing_t __diff = (Diff) - GL(dl_hp_timing_overhead); \
|
||||
__asm__ __volatile__("srl %L0, 0, %%g1\n\t" \
|
||||
"sllx %H0, 32, %%g7\n\t" \
|
||||
"or %%g1, %%g7, %%g1\n\t" \
|
||||
|
@@ -3,4 +3,5 @@ long-double-fcts = yes
|
||||
|
||||
ifeq ($(subdir),csu)
|
||||
sysdep_routines += hp-timing
|
||||
static-only-routines += hp-timing
|
||||
endif
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* Support for high precision, low overhead timing functions. sparc64 version.
|
||||
Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by David S. Miller <davem@redhat.com>, 2001.
|
||||
|
||||
@@ -21,4 +21,4 @@
|
||||
#include <hp-timing.h>
|
||||
|
||||
/* We have to define the variable for the overhead. */
|
||||
hp_timing_t __libc_hp_timing_overhead;
|
||||
hp_timing_t _dl_hp_timing_overhead;
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/* High precision, low overhead timing functions. sparc64 version.
|
||||
Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by David S. Miller <davem@redhat.com>, 2001.
|
||||
|
||||
@@ -30,8 +30,6 @@
|
||||
|
||||
typedef unsigned long int hp_timing_t;
|
||||
|
||||
extern hp_timing_t __libc_hp_timing_overhead;
|
||||
|
||||
#define HP_TIMING_ZERO(Var) (Var) = (0)
|
||||
|
||||
#define HP_TIMING_NOW(Var) __asm__ __volatile__ ("rd %%tick, %0" : "=r" (Var))
|
||||
@@ -39,14 +37,14 @@ extern hp_timing_t __libc_hp_timing_overhead;
|
||||
#define HP_TIMING_DIFF_INIT() \
|
||||
do { \
|
||||
int __cnt = 5; \
|
||||
__libc_hp_timing_overhead = ~0ull; \
|
||||
GL(hp_timing_overhead) = ~0ull; \
|
||||
do \
|
||||
{ \
|
||||
hp_timing_t __t1, __t2; \
|
||||
HP_TIMING_NOW (__t1); \
|
||||
HP_TIMING_NOW (__t2); \
|
||||
if (__t2 - __t1 < __libc_hp_timing_overhead) \
|
||||
__libc_hp_timing_overhead = __t2 - __t1; \
|
||||
if (__t2 - __t1 < GL(hp_timing_overhead)) \
|
||||
GL(hp_timing_overhead) = __t2 - __t1; \
|
||||
} \
|
||||
while (--__cnt > 0); \
|
||||
} while (0)
|
||||
@@ -55,7 +53,7 @@ extern hp_timing_t __libc_hp_timing_overhead;
|
||||
|
||||
#define HP_TIMING_ACCUM(Sum, Diff) \
|
||||
do { \
|
||||
hp_timing_t __diff = (Diff) - __libc_hp_timing_overhead; \
|
||||
hp_timing_t __diff = (Diff) - GL(hp_timing_overhead); \
|
||||
hp_timing_t tmp1, tmp2; \
|
||||
__asm__ __volatile__("1: ldx [%3], %0\n\t" \
|
||||
"add %0, %2, %1\n\t" \
|
||||
|
Reference in New Issue
Block a user