mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-22 13:00:06 +00:00
Remove unused frame.h header, sigcontextinfo.h macros.
The glibc-internal header frame.h was used in the old debug/backtrace.c but is now unused. Similarly, there are some sigcontextinfo.h macros that are used nowhere in glibc - ADVANCE_STACK_FRAME and FIRST_FRAME_POINTER were used in the old debug/backtrace.c, while SIGCONTEXT_EXTRA_ARGS, GET_FRAME, GET_STACK and CALL_SIGHANDLER were unused even before the removal of that old implementation (beyond uses of SIGCONTEXT_EXTRA_ARGS in definitions of CALL_SIGHANDLER). This patch removes all the unused frame.h headers and definitions of those macros. Tested with build-many-glibcs.py. * sysdeps/generic/frame.h: Remove file. * sysdeps/arm/frame.h: Likewise. * sysdeps/hppa/frame.h: Likewise. * sysdeps/generic/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Remove macro. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/mach/hurd/i386/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (ADVANCE_STACK_FRAME): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/i386/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/microblaze/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/powerpc/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/s390/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/sh/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (FIRST_FRAME_POINTER): Likewise. (ADVANCE_STACK_FRAME): Likewise. (GET_STACK): Likewise. (GET_FRAME): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (ADVANCE_STACK_FRAME): Likewise. (GET_STACK): Likewise. (GET_FRAME): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/tile/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise. * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Likewise. (GET_FRAME): Likewise. (GET_STACK): Likewise. (CALL_SIGHANDLER): Likewise.
This commit is contained in:
parent
ffec7b2740
commit
a44061398c
95
ChangeLog
95
ChangeLog
@ -1,3 +1,98 @@
|
||||
2018-03-22 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* sysdeps/generic/frame.h: Remove file.
|
||||
* sysdeps/arm/frame.h: Likewise.
|
||||
* sysdeps/hppa/frame.h: Likewise.
|
||||
* sysdeps/generic/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS): Remove
|
||||
macro.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/mach/hurd/i386/sigcontextinfo.h (SIGCONTEXT_EXTRA_ARGS):
|
||||
Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/arm/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(ADVANCE_STACK_FRAME): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/i386/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/m68k/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/microblaze/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/mips/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/powerpc/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/riscv/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/s390/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/sh/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(FIRST_FRAME_POINTER): Likewise.
|
||||
(ADVANCE_STACK_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/sparc/sparc64/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(ADVANCE_STACK_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/tile/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
* sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h
|
||||
(SIGCONTEXT_EXTRA_ARGS): Likewise.
|
||||
(GET_FRAME): Likewise.
|
||||
(GET_STACK): Likewise.
|
||||
(CALL_SIGHANDLER): Likewise.
|
||||
|
||||
2018-03-21 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* sysdeps/x86_64/backtrace.c: Move to ....
|
||||
|
@ -1,27 +0,0 @@
|
||||
/* Definition of stack frame structure. ARM/APCS version.
|
||||
Copyright (C) 2000-2018 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, see
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* This is the APCS stack backtrace structure. */
|
||||
struct layout
|
||||
{
|
||||
struct layout *next;
|
||||
void *sp;
|
||||
void *return_address;
|
||||
};
|
||||
|
||||
#define FIRST_FRAME_POINTER ADVANCE_STACK_FRAME (__builtin_frame_address (0))
|
@ -1,23 +0,0 @@
|
||||
/* Definition of stack frame structure. Generic version.
|
||||
Copyright (C) 2000-2018 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, see
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
struct layout
|
||||
{
|
||||
void *next;
|
||||
void *return_address;
|
||||
};
|
@ -18,9 +18,4 @@
|
||||
|
||||
/* In general we cannot provide any information. */
|
||||
#define SIGCONTEXT struct sigcontext *
|
||||
#define SIGCONTEXT_EXTRA_ARGS
|
||||
#define GET_PC(ctx) ((void *) 0)
|
||||
#define GET_FRAME(ctx) ((void *) 0)
|
||||
#define GET_STACK(ctx) ((void *) 0)
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -1,27 +0,0 @@
|
||||
/* Definition of stack frame structure. HPPA version.
|
||||
Copyright (C) 2000-2018 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, see
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* PA stacks grow upwards. */
|
||||
#define INNER_THAN >
|
||||
|
||||
/* FIXME: will verify this later */
|
||||
struct layout
|
||||
{
|
||||
void *next;
|
||||
void *return_address;
|
||||
};
|
@ -16,9 +16,4 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#define SIGCONTEXT struct sigcontext
|
||||
#define SIGCONTEXT_EXTRA_ARGS
|
||||
#define GET_PC(ctx) ((void *) (ctx).sc_eip)
|
||||
#define GET_FRAME(ctx) ((void *) (ctx).sc_ebp)
|
||||
#define GET_STACK(ctx) ((void *) (ctx).sc_uesp)
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -16,9 +16,4 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#define SIGCONTEXT int _code, struct sigcontext *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _code,
|
||||
#define GET_PC(ctx) ((void *) (ctx)->sc_pc)
|
||||
#define GET_FRAME(ctx) ((void *) (ctx)->sc_regs[15])
|
||||
#define GET_STACK(ctx) ((void *) (ctx)->sc_regs[30])
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -19,21 +19,12 @@
|
||||
#include <sys/ucontext.h>
|
||||
|
||||
#define SIGCONTEXT siginfo_t *_si, ucontext_t *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _si,
|
||||
|
||||
/* The sigcontext structure changed between 2.0 and 2.1 kernels. On any
|
||||
modern system we should be able to assume that the "new" format will be
|
||||
in use. */
|
||||
|
||||
#define GET_PC(ctx) ((void *) (ctx)->uc_mcontext.arm_pc)
|
||||
#define GET_FRAME(ctx) ADVANCE_STACK_FRAME ((void *) ctx->uc_mcontext.arm_fp)
|
||||
#define GET_STACK(ctx) ((void *) (ctx)->uc_mcontext.arm_sp)
|
||||
|
||||
#define ADVANCE_STACK_FRAME(frm) \
|
||||
((struct layout *)frm - 1)
|
||||
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
||||
/* There is no reliable way to get the sigcontext unless we use a
|
||||
three-argument signal handler. */
|
||||
|
@ -17,34 +17,4 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#define SIGCONTEXT struct sigcontext
|
||||
#define SIGCONTEXT_EXTRA_ARGS
|
||||
#define GET_PC(ctx) ((void *) ctx.eip)
|
||||
#define GET_FRAME(ctx) ((void *) ctx.ebp)
|
||||
#define GET_STACK(ctx) ((void *) ctx.esp_at_signal)
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
do { \
|
||||
int __tmp1, __tmp2, __tmp3, __tmp4; \
|
||||
__asm __volatile ("movl\t%%esp, %%edi\n\t" \
|
||||
"andl\t$-16, %%esp\n\t" \
|
||||
"subl\t%8, %%esp\n\t" \
|
||||
"movl\t%%edi, %c8-4(%%esp)\n\t" \
|
||||
"movl\t%1, 0(%%esp)\n\t" \
|
||||
"leal\t4(%%esp), %%edi\n\t" \
|
||||
"cld\n\t" \
|
||||
"rep\tmovsl\n\t" \
|
||||
"call\t*%0\n\t" \
|
||||
"cld\n\t" \
|
||||
"movl\t%9, %%ecx\n\t" \
|
||||
"subl\t%%edi, %%esi\n\t" \
|
||||
"leal\t4(%%esp,%%esi,1), %%edi\n\t" \
|
||||
"leal\t4(%%esp), %%esi\n\t" \
|
||||
"rep\tmovsl\n\t" \
|
||||
"movl\t%c8-4(%%esp), %%esp\n\t" \
|
||||
: "=a" (__tmp1), "=d" (__tmp2), "=S" (__tmp3), \
|
||||
"=c" (__tmp4) \
|
||||
: "0" (handler), "1" (signo), "2" (&ctx), \
|
||||
"3" (sizeof (struct sigcontext) / 4), \
|
||||
"n" ((sizeof (struct sigcontext) + 19) & ~15), \
|
||||
"i" (sizeof (struct sigcontext) / 4) \
|
||||
: "cc", "edi"); \
|
||||
} while (0)
|
||||
|
@ -16,10 +16,4 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#define SIGCONTEXT siginfo_t *_si, struct sigcontext *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _si,
|
||||
#define GET_PC(ctx) ((ctx)->sc_ip)
|
||||
#define GET_FRAME(ctx) ((void *) 0)
|
||||
#define GET_STACK(ctx) ((void *) 0)
|
||||
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -17,9 +17,4 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#define SIGCONTEXT int _code, struct sigcontext *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _code,
|
||||
#define GET_PC(ctx) ((void *) (ctx)->sc_pc)
|
||||
#define GET_FRAME(ctx) ((void *) __builtin_frame_address (1))
|
||||
#define GET_STACK(ctx) ((void *) (ctx)->sc_usp)
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -17,9 +17,4 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#define SIGCONTEXT int _code, ucontext_t *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _code,
|
||||
#define GET_PC(ctx) ((void *) (ctx)->uc_mcontext.regs.pc)
|
||||
#define GET_FRAME(ctx) ((void *) (ctx)->uc_mcontext.regs.sp)
|
||||
#define GET_STACK(ctx) ((void *) (ctx)->uc_mcontext.regs.sp)
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -22,21 +22,11 @@
|
||||
#if _MIPS_SIM == _ABIO32
|
||||
|
||||
#define SIGCONTEXT unsigned long _code, struct sigcontext *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _code,
|
||||
#define GET_PC(ctx) ((void *) (unsigned long) ctx->sc_pc)
|
||||
#define GET_FRAME(ctx) ((void *) (unsigned long) ctx->sc_regs[30])
|
||||
#define GET_STACK(ctx) ((void *) (unsigned long) ctx->sc_regs[29])
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
||||
#else
|
||||
|
||||
#define SIGCONTEXT unsigned long _code, ucontext_t *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _code,
|
||||
#define GET_PC(ctx) ((void *) (unsigned long) ctx->uc_mcontext.pc)
|
||||
#define GET_FRAME(ctx) ((void *) (unsigned long) ctx->uc_mcontext.gregs[30])
|
||||
#define GET_STACK(ctx) ((void *) (unsigned long) ctx->uc_mcontext.gregs[29])
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
||||
#endif
|
||||
|
@ -18,9 +18,4 @@
|
||||
#include <signal.h>
|
||||
|
||||
#define SIGCONTEXT struct sigcontext *
|
||||
#define SIGCONTEXT_EXTRA_ARGS
|
||||
#define GET_PC(ctx) ((void *)((ctx)->regs->nip))
|
||||
#define GET_FRAME(ctx) (*(void **)((ctx)->regs->gpr[1]))
|
||||
#define GET_STACK(ctx) ((void *)((ctx)->regs->gpr[1]))
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -19,10 +19,4 @@
|
||||
#include <sys/ucontext.h>
|
||||
|
||||
#define SIGCONTEXT siginfo_t *_si, ucontext_t *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _si,
|
||||
#define GET_PC(ctx) ((void *) ctx->uc_mcontext.__gregs[REG_PC])
|
||||
#define GET_FRAME(ctx) ((void *) ctx->uc_mcontext.__gregs[REG_S0])
|
||||
#define GET_STACK(ctx) ((void *) ctx->uc_mcontext.__gregs[REG_SP])
|
||||
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -19,9 +19,4 @@
|
||||
#include <signal.h>
|
||||
|
||||
#define SIGCONTEXT struct sigcontext *
|
||||
#define SIGCONTEXT_EXTRA_ARGS
|
||||
#define GET_PC(ctx) ((void *)((ctx)->sregs->regs.psw.addr))
|
||||
#define GET_FRAME(ctx) (*(void **)((ctx)->sregs->regs.gprs[11]))
|
||||
#define GET_STACK(ctx) ((void *)((ctx)->sregs->regs.gprs[15]))
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -18,9 +18,4 @@
|
||||
|
||||
#define SIGCONTEXT int _a2, int _a3, int _a4, struct sigcontext
|
||||
|
||||
#define SIGCONTEXT_EXTRA_ARGS _a2, _a3, _a4,
|
||||
#define GET_PC(ctx) ((void *) ctx.sc_pc)
|
||||
#define GET_FRAME(ctx) ((void *) ctx.sc_regs[14])
|
||||
#define GET_STACK(ctx) ((void *) ctx.sc_regs[15])
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -17,15 +17,4 @@
|
||||
<http://www.gnu.org/licenses/>. */
|
||||
|
||||
#define SIGCONTEXT struct sigcontext *
|
||||
#define SIGCONTEXT_EXTRA_ARGS
|
||||
#define GET_PC(__ctx) ((void *) ((__ctx)->si_regs.pc))
|
||||
#define FIRST_FRAME_POINTER \
|
||||
({ void *ret; \
|
||||
asm volatile ("ta 3; add %%fp, 56, %0" : "=r" (ret)); ret; })
|
||||
#define ADVANCE_STACK_FRAME(__next) \
|
||||
((void *) (((unsigned *)(__next))+14))
|
||||
|
||||
#define GET_STACK(__ctx) ((void *) (__ctx)->si_regs.u_regs[14])
|
||||
#define GET_FRAME(__ctx) ADVANCE_STACK_FRAME (GET_STACK(__ctx))
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -20,12 +20,4 @@
|
||||
#define STACK_BIAS 2047
|
||||
#endif
|
||||
#define SIGCONTEXT struct sigcontext *
|
||||
#define SIGCONTEXT_EXTRA_ARGS
|
||||
#define GET_PC(__ctx) ((void *) ((__ctx)->sigc_regs.tpc))
|
||||
#define ADVANCE_STACK_FRAME(__next) \
|
||||
((void *) (((unsigned long *) (((unsigned long int) (__next)) \
|
||||
+ STACK_BIAS))+14))
|
||||
#define GET_STACK(__ctx) ((void *) ((__ctx)->sigc_regs.u_regs[14]))
|
||||
#define GET_FRAME(__ctx) ADVANCE_STACK_FRAME (GET_STACK (__ctx))
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -19,9 +19,4 @@
|
||||
#include <arch/abi.h>
|
||||
|
||||
#define SIGCONTEXT siginfo_t *_si, ucontext_t *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _si,
|
||||
#define GET_PC(ctx) ((void *) (long) ctx->uc_mcontext.pc)
|
||||
#define GET_FRAME(ctx) ((void *) (long) ctx->uc_mcontext.regs[TREG_FP])
|
||||
#define GET_STACK(ctx) ((void *) (long) ctx->uc_mcontext.sp)
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
@ -18,13 +18,5 @@
|
||||
#include <stdint.h>
|
||||
|
||||
#define SIGCONTEXT siginfo_t *_si, ucontext_t *
|
||||
#define SIGCONTEXT_EXTRA_ARGS _si,
|
||||
#define GET_PC(ctx) \
|
||||
((void *) (uintptr_t) (ctx)->uc_mcontext.gregs[REG_RIP])
|
||||
#define GET_FRAME(ctx) \
|
||||
((void *) (uintptr_t) (ctx)->uc_mcontext.gregs[REG_RBP])
|
||||
#define GET_STACK(ctx) \
|
||||
((void *) (uintptr_t) (ctx)->uc_mcontext.gregs[REG_RSP])
|
||||
|
||||
#define CALL_SIGHANDLER(handler, signo, ctx) \
|
||||
(handler)((signo), SIGCONTEXT_EXTRA_ARGS (ctx))
|
||||
|
Loading…
Reference in New Issue
Block a user