| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- There is one usage in boehm-gc/os_dep.c, but it is only used if
- SUNOS5SIGS is defined, which it is only if one of SUNOS5, DRSNX, HPUX, or
- FREEBSD is defined, which are all not using Linux-based glibc ports.
- Likewise, gcc/ada/init.c has a struct __siginfo occurence, but only for
- __FreeBSD__.
- config/rs6000/linux-unwind.h uses ``char siginfo[128]'', and
- config/s390/linux-unwind.h also uses a constant.
- I tested the following patch for sh-linux-gnu. This only covers one
- configuration, but the change is pretty mechanic anyway and every place
- that used to refer to struct siginfo already must have had <signal.h> in
- its include path, which is the same file that declares siginfo_t.
- OK to commit? This should probably also go into any active release
- branches, to keep them buildable once this glibc change ripples through?
- gcc/
- * config/alpha/linux-unwind.h (alpha_fallback_frame_state): Use
- siginfo_t instead of struct siginfo.
- * config/bfin/linux-unwind.h (bfin_fallback_frame_state): Likewise.
- * config/i386/linux-unwind.h (x86_fallback_frame_state): Likewise.
- * config/ia64/linux-unwind.h (ia64_fallback_frame_state)
- (ia64_handle_unwabi): Likewise.
- * config/mips/linux-unwind.h (mips_fallback_frame_state): Likewise.
- * config/pa/linux-unwind.h (pa32_fallback_frame_state): Likewise.
- * config/sh/linux-unwind.h (shmedia_fallback_frame_state)
- (sh_fallback_frame_state): Likewise.
- * config/tilepro/linux-unwind.h (tile_fallback_frame_state): Likewise.
- * config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Likewise.
- ---
- diff -urN gcc-linaro-4.6-2012.02/gcc/config/alpha/linux-unwind.h gcc-linaro-4.6-2012.02.new/gcc/config/alpha/linux-unwind.h
- --- gcc-linaro-4.6-2012.02/gcc/config/alpha/linux-unwind.h 2012-02-07 11:33:31.000000000 +0100
- +++ gcc-linaro-4.6-2012.02.new/gcc/config/alpha/linux-unwind.h 2012-09-13 10:25:52.919072751 +0200
- @@ -49,7 +49,7 @@
- else if (pc[1] == 0x201f015f) /* lda $0,NR_rt_sigreturn */
- {
- struct rt_sigframe {
- - struct siginfo info;
- + siginfo_t info;
- struct ucontext uc;
- } *rt_ = context->cfa;
- sc = &rt_->uc.uc_mcontext;
- diff -urN gcc-linaro-4.6-2012.02/gcc/config/bfin/linux-unwind.h gcc-linaro-4.6-2012.02.new/gcc/config/bfin/linux-unwind.h
- --- gcc-linaro-4.6-2012.02/gcc/config/bfin/linux-unwind.h 2012-02-07 11:33:31.000000000 +0100
- +++ gcc-linaro-4.6-2012.02.new/gcc/config/bfin/linux-unwind.h 2012-09-13 10:26:14.819073313 +0200
- @@ -48,10 +48,10 @@
- {
- struct rt_sigframe {
- int sig;
- - struct siginfo *pinfo;
- + siginfo_t *pinfo;
- void *puc;
- char retcode[8];
- - struct siginfo info;
- + siginfo_t info;
- struct ucontext uc;
- } *rt_ = context->cfa;
-
- diff -urN gcc-linaro-4.6-2012.02/gcc/config/i386/linux-unwind.h gcc-linaro-4.6-2012.02.new/gcc/config/i386/linux-unwind.h
- --- gcc-linaro-4.6-2012.02/gcc/config/i386/linux-unwind.h 2012-02-07 11:33:31.000000000 +0100
- +++ gcc-linaro-4.6-2012.02.new/gcc/config/i386/linux-unwind.h 2012-09-13 10:26:41.891074005 +0200
- @@ -133,9 +133,9 @@
- {
- struct rt_sigframe {
- int sig;
- - struct siginfo *pinfo;
- + siginfo_t *pinfo;
- void *puc;
- - struct siginfo info;
- + siginfo_t info;
- struct ucontext uc;
- } *rt_ = context->cfa;
- /* The void * cast is necessary to avoid an aliasing warning.
- diff -urN gcc-linaro-4.6-2012.02/gcc/config/ia64/linux-unwind.h gcc-linaro-4.6-2012.02.new/gcc/config/ia64/linux-unwind.h
- --- gcc-linaro-4.6-2012.02/gcc/config/ia64/linux-unwind.h 2012-02-07 11:33:31.000000000 +0100
- +++ gcc-linaro-4.6-2012.02.new/gcc/config/ia64/linux-unwind.h 2012-09-13 10:26:59.251074450 +0200
- @@ -47,7 +47,7 @@
- struct sigframe {
- char scratch[16];
- unsigned long sig_number;
- - struct siginfo *info;
- + siginfo_t *info;
- struct sigcontext *sc;
- } *frame_ = (struct sigframe *)context->psp;
- struct sigcontext *sc = frame_->sc;
- @@ -137,7 +137,7 @@
- struct sigframe {
- char scratch[16];
- unsigned long sig_number;
- - struct siginfo *info;
- + siginfo_t *info;
- struct sigcontext *sc;
- } *frame = (struct sigframe *)context->psp;
- struct sigcontext *sc = frame->sc;
- diff -urN gcc-linaro-4.6-2012.02/gcc/config/mips/linux-unwind.h gcc-linaro-4.6-2012.02.new/gcc/config/mips/linux-unwind.h
- --- gcc-linaro-4.6-2012.02/gcc/config/mips/linux-unwind.h 2012-02-07 11:33:31.000000000 +0100
- +++ gcc-linaro-4.6-2012.02.new/gcc/config/mips/linux-unwind.h 2012-09-13 10:27:17.947074929 +0200
- @@ -75,7 +75,7 @@
- struct rt_sigframe {
- u_int32_t ass[4]; /* Argument save space for o32. */
- u_int32_t trampoline[2];
- - struct siginfo info;
- + siginfo_t info;
- _sig_ucontext_t uc;
- } *rt_ = context->cfa;
- sc = &rt_->uc.uc_mcontext;
- diff -urN gcc-linaro-4.6-2012.02/gcc/config/pa/linux-unwind.h gcc-linaro-4.6-2012.02.new/gcc/config/pa/linux-unwind.h
- --- gcc-linaro-4.6-2012.02/gcc/config/pa/linux-unwind.h 2012-02-07 11:33:31.000000000 +0100
- +++ gcc-linaro-4.6-2012.02.new/gcc/config/pa/linux-unwind.h 2012-09-13 10:27:27.491075173 +0200
- @@ -63,7 +63,7 @@
- int i;
- struct sigcontext *sc;
- struct rt_sigframe {
- - struct siginfo info;
- + siginfo_t info;
- struct ucontext uc;
- } *frame;
-
- diff -urN gcc-linaro-4.6-2012.02/gcc/config/sh/linux-unwind.h gcc-linaro-4.6-2012.02.new/gcc/config/sh/linux-unwind.h
- --- gcc-linaro-4.6-2012.02/gcc/config/sh/linux-unwind.h 2012-02-07 11:33:31.000000000 +0100
- +++ gcc-linaro-4.6-2012.02.new/gcc/config/sh/linux-unwind.h 2012-09-13 10:27:58.551075969 +0200
- @@ -80,9 +80,9 @@
- && (*(unsigned long *) (pc+11) == 0x6ff0fff0))
- {
- struct rt_sigframe {
- - struct siginfo *pinfo;
- + siginfo_t *pinfo;
- void *puc;
- - struct siginfo info;
- + siginfo_t info;
- struct ucontext uc;
- } *rt_ = context->cfa;
- /* The void * cast is necessary to avoid an aliasing warning.
- @@ -179,7 +179,7 @@
- && (*(unsigned short *) (pc+14) == 0x00ad))))
- {
- struct rt_sigframe {
- - struct siginfo info;
- + siginfo_t info;
- struct ucontext uc;
- } *rt_ = context->cfa;
- /* The void * cast is necessary to avoid an aliasing warning.
- diff -urN gcc-linaro-4.6-2012.02/gcc/config/xtensa/linux-unwind.h gcc-linaro-4.6-2012.02.new/gcc/config/xtensa/linux-unwind.h
- --- gcc-linaro-4.6-2012.02/gcc/config/xtensa/linux-unwind.h 2012-02-07 11:33:31.000000000 +0100
- +++ gcc-linaro-4.6-2012.02.new/gcc/config/xtensa/linux-unwind.h 2012-09-13 10:28:13.827076359 +0200
- @@ -62,7 +62,7 @@
- struct sigcontext *sc;
-
- struct rt_sigframe {
- - struct siginfo info;
- + siginfo_t info;
- struct ucontext uc;
- } *rt_;
-
|