diff options
author | Maxim Kuvyrkov <maxim@codesourcery.com> | 2009-07-15 08:56:13 +0000 |
---|---|---|
committer | Maxim Kuvyrkov <mkuvyrkov@gcc.gnu.org> | 2009-07-15 08:56:13 +0000 |
commit | 31d29c406122cbefe9ee1f249c5a6f06de8cde09 (patch) | |
tree | 4ae44f91767c6ae091e93dcceda8b3e5fecbd1b3 /gcc | |
parent | f6ddbf11c30d0e42e369e7b7f315a66e2e601207 (diff) | |
download | gcc-31d29c406122cbefe9ee1f249c5a6f06de8cde09.zip gcc-31d29c406122cbefe9ee1f249c5a6f06de8cde09.tar.gz gcc-31d29c406122cbefe9ee1f249c5a6f06de8cde09.tar.bz2 |
linux-unwind.h (m68k_fallback_frame_state): Update to handle 2.6.30 kernel.
* config/m68k/linux-unwind.h (m68k_fallback_frame_state): Update to
handle 2.6.30 kernel.
From-SVN: r149663
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/m68k/linux-unwind.h | 9 |
2 files changed, 14 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 201a3ef..d160c8d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2009-07-15 Maxim Kuvyrkov <maxim@codesourcery.com> + + * config/m68k/linux-unwind.h (m68k_fallback_frame_state): Update to + handle 2.6.30 kernel. + 2009-07-15 DJ Delorie <dj@redhat.com> * config/mep/mep.md (sibcall_internal): Change register to allow diff --git a/gcc/config/m68k/linux-unwind.h b/gcc/config/m68k/linux-unwind.h index 5f87746..053c155 100644 --- a/gcc/config/m68k/linux-unwind.h +++ b/gcc/config/m68k/linux-unwind.h @@ -77,9 +77,15 @@ m68k_fallback_frame_state (struct _Unwind_Context *context, fs->regs.reg[9].how = REG_SAVED_OFFSET; fs->regs.reg[9].loc.offset = (long) &sc->sc_a1 - cfa; +#ifdef __uClinux__ + fs->regs.reg[13].how = REG_SAVED_OFFSET; + fs->regs.reg[13].loc.offset = (long) &sc->sc_a5 - cfa; +#endif + fs->regs.reg[24].how = REG_SAVED_OFFSET; fs->regs.reg[24].loc.offset = (long) &sc->sc_pc - cfa; +#ifndef __uClinux__ if (*(int *) sc->sc_fpstate) { int *fpregs = (int *) sc->sc_fpregs; @@ -89,6 +95,9 @@ m68k_fallback_frame_state (struct _Unwind_Context *context, fs->regs.reg[17].how = REG_SAVED_OFFSET; fs->regs.reg[17].loc.offset = (long) &fpregs[M68K_FP_SIZE/4] - cfa; } +#elif defined __mcffpu__ +# error Implement this when uClinux kernel is ported to an FPU architecture +#endif } #ifdef __mcoldfire__ /* move.l #__NR_rt_sigreturn,%d0; trap #0 */ |