diff options
author | Eric Andersen <andersen@codepoet.org> | 2003-03-03 20:58:42 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2003-03-03 20:58:42 +0000 |
commit | 67eff66438688fddebe41f77fd252a3b2b135271 (patch) | |
tree | 18dbee3e9afe50d27095140198e2aa34df1de061 /libpthread/linuxthreads/sysdeps/arm | |
parent | 2229d0fa131387b9b8ad16ac88347350a080aeb5 (diff) |
Initial effort at adding profiling support.
Diffstat (limited to 'libpthread/linuxthreads/sysdeps/arm')
-rw-r--r-- | libpthread/linuxthreads/sysdeps/arm/bits/armsigctx.h | 73 | ||||
-rw-r--r-- | libpthread/linuxthreads/sysdeps/arm/sigcontextinfo.h | 108 | ||||
-rw-r--r-- | libpthread/linuxthreads/sysdeps/arm/stackinfo.h | 28 |
3 files changed, 0 insertions, 209 deletions
diff --git a/libpthread/linuxthreads/sysdeps/arm/bits/armsigctx.h b/libpthread/linuxthreads/sysdeps/arm/bits/armsigctx.h deleted file mode 100644 index 4530cdbda..000000000 --- a/libpthread/linuxthreads/sysdeps/arm/bits/armsigctx.h +++ /dev/null @@ -1,73 +0,0 @@ -/* Definition of `struct sigcontext' for Linux/ARM - Copyright (C) 1996, 1997, 1998, 1999, 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 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. */ - -/* The format of struct sigcontext changed between 2.0 and 2.1 kernels. - Fortunately 2.0 puts a magic number in the first word and this is not - a legal value for `trap_no', so we can tell them apart. */ - -/* Early 2.2 and 2.3 kernels do not have the `fault_address' member in - the sigcontext structure. Unfortunately there is no reliable way - to test for its presence and this word will contain garbage for too-old - kernels. Versions 2.2.14 and 2.3.35 (plus later versions) are known to - include this element. */ - -#ifndef __ARMSIGCTX_H -#define __ARMSIGCTX_H 1 - -#include <asm/ptrace.h> - -union k_sigcontext - { - struct - { - unsigned long int trap_no; - unsigned long int error_code; - unsigned long int oldmask; - unsigned long int arm_r0; - unsigned long int arm_r1; - unsigned long int arm_r2; - unsigned long int arm_r3; - unsigned long int arm_r4; - unsigned long int arm_r5; - unsigned long int arm_r6; - unsigned long int arm_r7; - unsigned long int arm_r8; - unsigned long int arm_r9; - unsigned long int arm_r10; - unsigned long int arm_fp; - unsigned long int arm_ip; - unsigned long int arm_sp; - unsigned long int arm_lr; - unsigned long int arm_pc; - unsigned long int arm_cpsr; - unsigned long fault_address; - } v21; - struct - { - unsigned long int magic; - struct pt_regs reg; - unsigned long int trap_no; - unsigned long int error_code; - unsigned long int oldmask; - } v20; -}; - -#define SIGCONTEXT_2_0_MAGIC 0x4B534154 - -#endif /* bits/armsigctx.h */ diff --git a/libpthread/linuxthreads/sysdeps/arm/sigcontextinfo.h b/libpthread/linuxthreads/sysdeps/arm/sigcontextinfo.h deleted file mode 100644 index 0e6d295c3..000000000 --- a/libpthread/linuxthreads/sysdeps/arm/sigcontextinfo.h +++ /dev/null @@ -1,108 +0,0 @@ -/* Copyright (C) 1999 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Philip Blundell <philb@gnu.org>, 1999. - - 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. */ - - -/* Definition of `struct sigcontext' for Linux/ARM - Copyright (C) 1996, 1997, 1998, 1999, 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 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. */ - -/* The format of struct sigcontext changed between 2.0 and 2.1 kernels. - Fortunately 2.0 puts a magic number in the first word and this is not - a legal value for `trap_no', so we can tell them apart. */ - -/* Early 2.2 and 2.3 kernels do not have the `fault_address' member in - the sigcontext structure. Unfortunately there is no reliable way - to test for its presence and this word will contain garbage for too-old - kernels. Versions 2.2.14 and 2.3.35 (plus later versions) are known to - include this element. */ - -#ifndef __ARMSIGCTX_H -#define __ARMSIGCTX_H 1 - -#include <asm/ptrace.h> - -union k_sigcontext - { - struct - { - unsigned long int trap_no; - unsigned long int error_code; - unsigned long int oldmask; - unsigned long int arm_r0; - unsigned long int arm_r1; - unsigned long int arm_r2; - unsigned long int arm_r3; - unsigned long int arm_r4; - unsigned long int arm_r5; - unsigned long int arm_r6; - unsigned long int arm_r7; - unsigned long int arm_r8; - unsigned long int arm_r9; - unsigned long int arm_r10; - unsigned long int arm_fp; - unsigned long int arm_ip; - unsigned long int arm_sp; - unsigned long int arm_lr; - unsigned long int arm_pc; - unsigned long int arm_cpsr; - unsigned long fault_address; - } v21; - struct - { - unsigned long int magic; - struct pt_regs reg; - unsigned long int trap_no; - unsigned long int error_code; - unsigned long int oldmask; - } v20; -}; - -#define SIGCONTEXT_2_0_MAGIC 0x4B534154 - -#endif /* bits/armsigctx.h */ - -#define SIGCONTEXT int _a2, int _a3, int _a4, union k_sigcontext -#define SIGCONTEXT_EXTRA_ARGS _a2, _a3, _a4, - -#define GET_PC(ctx) ((void *)((ctx.v20.magic == SIGCONTEXT_2_0_MAGIC) ? \ - ctx.v20.reg.ARM_pc : ctx.v21.arm_pc)) -#define GET_FRAME(ctx) \ - ADVANCE_STACK_FRAME((void *)((ctx.v20.magic == SIGCONTEXT_2_0_MAGIC) ? \ - ctx.v20.reg.ARM_fp : ctx.v21.arm_fp)) -#define GET_STACK(ctx) ((void *)((ctx.v20.magic == SIGCONTEXT_2_0_MAGIC) ? \ - ctx.v20.reg.ARM_sp : ctx.v21.arm_sp)) -#define ADVANCE_STACK_FRAME(frm) \ - ((struct layout *)frm - 1) -#define CALL_SIGHANDLER(handler, signo, ctx) \ - (handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx)) diff --git a/libpthread/linuxthreads/sysdeps/arm/stackinfo.h b/libpthread/linuxthreads/sysdeps/arm/stackinfo.h deleted file mode 100644 index 2410ba9bd..000000000 --- a/libpthread/linuxthreads/sysdeps/arm/stackinfo.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright (C) 2001 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. */ - -/* This file contains a bit of information about the stack allocation - of the processor. */ - -#ifndef _STACKINFO_H -#define _STACKINFO_H 1 - -/* On Arm the stack grows down. */ -#define _STACK_GROWS_DOWN 1 - -#endif /* stackinfo.h */ |