From 586599b5005e6dbe608dd6885b0b282472494405 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Fri, 11 Feb 2000 19:48:04 +0000 Subject: Update. 2000-02-02 Andreas Schwab * malloc/Makefile (distribute): Add memprof.h. * malloc/memprof.c: Move definition of GETSP and GETTIME to new header memprof.h. * sysdeps/generic/memprof.h: New file. * sysdeps/alpha/memprof.h: New file. * sysdeps/i386/memprof.h: New file. * sysdeps/m68k/memprof.h: New file. * sysdeps/mips/memprof.h: New file. * sysdeps/powerpc/memprof.h: New file. * sysdeps/sparc/memprof.h: New file. --- sysdeps/alpha/memprof.h | 21 +++++++++++++++++++++ sysdeps/generic/memprof.h | 35 +++++++++++++++++++++++++++++++++++ sysdeps/i386/memprof.h | 22 ++++++++++++++++++++++ sysdeps/m68k/memprof.h | 22 ++++++++++++++++++++++ sysdeps/mips/memprof.h | 21 +++++++++++++++++++++ sysdeps/powerpc/memprof.h | 21 +++++++++++++++++++++ sysdeps/sparc/memprof.h | 21 +++++++++++++++++++++ 7 files changed, 163 insertions(+) create mode 100644 sysdeps/alpha/memprof.h create mode 100644 sysdeps/generic/memprof.h create mode 100644 sysdeps/i386/memprof.h create mode 100644 sysdeps/m68k/memprof.h create mode 100644 sysdeps/mips/memprof.h create mode 100644 sysdeps/powerpc/memprof.h create mode 100644 sysdeps/sparc/memprof.h (limited to 'sysdeps') diff --git a/sysdeps/alpha/memprof.h b/sysdeps/alpha/memprof.h new file mode 100644 index 0000000000..462b5ce1c2 --- /dev/null +++ b/sysdeps/alpha/memprof.h @@ -0,0 +1,21 @@ +/* Copyright (C) 2000 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#define GETSP() ({ register uintptr_t stack_ptr asm ("$30"); stack_ptr; }) + +#include diff --git a/sysdeps/generic/memprof.h b/sysdeps/generic/memprof.h new file mode 100644 index 0000000000..ce94b7338d --- /dev/null +++ b/sysdeps/generic/memprof.h @@ -0,0 +1,35 @@ +/* Copyright (C) 2000 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + + +#ifndef GETSP +# warning "GETSP is not defined for this architecture." +# define GETSP 0 +#endif + +#ifndef GETTIME +# define GETTIME(low,high) \ + { \ + struct timeval tval; \ + uint64_t usecs; \ + gettimeofday (&tval, NULL); \ + usecs = (uint64_t) tval.tv_usec + (uint64_t) tval.tv_usec * 1000000; \ + low = usecs & 0xffffffff; \ + high = usecs >> 32; \ + } +#endif diff --git a/sysdeps/i386/memprof.h b/sysdeps/i386/memprof.h new file mode 100644 index 0000000000..c1b047f556 --- /dev/null +++ b/sysdeps/i386/memprof.h @@ -0,0 +1,22 @@ +/* Copyright (C) 2000 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#define GETSP() ({ register uintptr_t stack_ptr asm ("esp"); stack_ptr; }) +#define GETTIME(low,high) asm ("rdtsc" : "=a" (low), "=d" (high)) + +#include diff --git a/sysdeps/m68k/memprof.h b/sysdeps/m68k/memprof.h new file mode 100644 index 0000000000..5fd1cf4282 --- /dev/null +++ b/sysdeps/m68k/memprof.h @@ -0,0 +1,22 @@ +/* Copyright (C) 2000 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + + +#define GETSP() ({ register uintptr_t stack_ptr asm ("%sp"); stack_ptr; }) + +#include diff --git a/sysdeps/mips/memprof.h b/sysdeps/mips/memprof.h new file mode 100644 index 0000000000..93f2917d8c --- /dev/null +++ b/sysdeps/mips/memprof.h @@ -0,0 +1,21 @@ +/* Copyright (C) 2000 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#define GETSP() ({ register uintptr_t stack_ptr asm ("$29"); stack_ptr; }) + +#include diff --git a/sysdeps/powerpc/memprof.h b/sysdeps/powerpc/memprof.h new file mode 100644 index 0000000000..05c8e78b38 --- /dev/null +++ b/sysdeps/powerpc/memprof.h @@ -0,0 +1,21 @@ +/* Copyright (C) 2000 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#define GETSP() ({ register uintptr_t stack_ptr asm ("%r1"); stack_ptr; }) + +#include diff --git a/sysdeps/sparc/memprof.h b/sysdeps/sparc/memprof.h new file mode 100644 index 0000000000..090e02ae88 --- /dev/null +++ b/sysdeps/sparc/memprof.h @@ -0,0 +1,21 @@ +/* Copyright (C) 2000 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 Library General Public License as + published by the Free Software Foundation; either version 2 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 + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#define GETSP() ({ register uintptr_t stack_ptr asm ("%sp"); stack_ptr; }) + +#include -- cgit 1.4.1