diff options
| author | Eric Andersen <andersen@codepoet.org> | 2006-08-21 23:29:36 +0000 | 
|---|---|---|
| committer | Eric Andersen <andersen@codepoet.org> | 2006-08-21 23:29:36 +0000 | 
| commit | 4beed843c11a1f3079c775e501dbe1069e4c7bbe (patch) | |
| tree | 104921f9419e00744b3e787a09c48505bf3b4d83 /libc/sysdeps/linux/sparc | |
| parent | 82911dd00068e8978d0da4b44dd0fc4b833b8c72 (diff) | |
bits/profil-counter.h and bits/atomicity.h are leftovers from the old gprof
based profiling I nuked ages ago since tools like oprofile are non invasive
and work so much better.
Diffstat (limited to 'libc/sysdeps/linux/sparc')
| -rw-r--r-- | libc/sysdeps/linux/sparc/bits/atomicity.h | 98 | ||||
| -rw-r--r-- | libc/sysdeps/linux/sparc/bits/profil-counter.h | 26 | 
2 files changed, 0 insertions, 124 deletions
| diff --git a/libc/sysdeps/linux/sparc/bits/atomicity.h b/libc/sysdeps/linux/sparc/bits/atomicity.h deleted file mode 100644 index 22f5b3f50..000000000 --- a/libc/sysdeps/linux/sparc/bits/atomicity.h +++ /dev/null @@ -1,98 +0,0 @@ -/* Low-level functions for atomic operations.  Sparc32 version. -   Copyright (C) 1999 Free Software Foundation, Inc. -   This file is part of the GNU C Library. - -   The GNU C Library is free software; you can redistribute it and/or -   modify it under the terms of the GNU Lesser General Public -   License as published by the Free Software Foundation; either -   version 2.1 of the License, or (at your option) any later version. - -   The GNU C Library is distributed in the hope that it will be useful, -   but WITHOUT ANY WARRANTY; without even the implied warranty of -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU -   Lesser General Public License for more details. - -   You should have received a copy of the GNU Lesser General Public -   License along with the GNU C Library; if not, write to the Free -   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -   02111-1307 USA.  */ - -#ifndef _ATOMICITY_H -#define _ATOMICITY_H	1 - -#include <inttypes.h> - -static int -__attribute_used__ -exchange_and_add (volatile uint32_t *mem, int val) -{ -  static unsigned char lock; -  int result, tmp; - -  __asm__ __volatile__("1:	ldstub	[%1], %0\n\t" -		       "	cmp	%0, 0\n\t" -		       "	bne	1b\n\t" -		       "	 nop" -		       : "=&r" (tmp) -		       : "r" (&lock) -		       : "memory"); -  result = *mem; -  *mem += val; -  __asm__ __volatile__("stb	%%g0, [%0]" -		       : /* no outputs */ -		       : "r" (&lock) -		       : "memory"); -  return result; -} - -static void -__attribute_used__ -atomic_add (volatile uint32_t *mem, int val) -{ -  static unsigned char lock; -  int tmp; - -  __asm__ __volatile__("1:	ldstub	[%1], %0\n\t" -		       "	cmp	%0, 0\n\t" -		       "	bne	1b\n\t" -		       "	 nop" -		       : "=&r" (tmp) -		       : "r" (&lock) -		       : "memory"); -  *mem += val; -  __asm__ __volatile__("stb	%%g0, [%0]" -		       : /* no outputs */ -		       : "r" (&lock) -		       : "memory"); -} - -static int -__attribute_used__ -compare_and_swap (volatile long int *p, long int oldval, long int newval) -{ -  static unsigned char lock; -  int ret, tmp; - -  __asm__ __volatile__("1:	ldstub	[%1], %0\n\t" -		       "	cmp	%0, 0\n\t" -		       "	bne	1b\n\t" -		       "	 nop" -		       : "=&r" (tmp) -		       : "r" (&lock) -		       : "memory"); -  if (*p != oldval) -    ret = 0; -  else -    { -      *p = newval; -      ret = 1; -    } -  __asm__ __volatile__("stb	%%g0, [%0]" -		       : /* no outputs */ -		       : "r" (&lock) -		       : "memory"); - -  return ret; -} - -#endif /* atomicity.h */ diff --git a/libc/sysdeps/linux/sparc/bits/profil-counter.h b/libc/sysdeps/linux/sparc/bits/profil-counter.h deleted file mode 100644 index 1e22e8cce..000000000 --- a/libc/sysdeps/linux/sparc/bits/profil-counter.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Low-level statistical profiling support function.  Linux/SPARC version. -   Copyright (C) 1997, 1999 Free Software Foundation, Inc. -   This file is part of the GNU C Library. - -   The GNU C Library is free software; you can redistribute it and/or -   modify it under the terms of the GNU Lesser General Public -   License as published by the Free Software Foundation; either -   version 2.1 of the License, or (at your option) any later version. - -   The GNU C Library is distributed in the hope that it will be useful, -   but WITHOUT ANY WARRANTY; without even the implied warranty of -   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU -   Lesser General Public License for more details. - -   You should have received a copy of the GNU Lesser General Public -   License along with the GNU C Library; if not, write to the Free -   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -   02111-1307 USA.  */ - -#include <signal.h> - -void -profil_counter (int signo, struct sigcontext *si) -{ -  profil_count ((void *) si->si_regs.pc); -} | 
