This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFC] mips_abi_update, flush_cached_frames
- From: Daniel Jacobowitz <drow at false dot org>
- To: gdb-patches at sources dot redhat dot com
- Cc: Michael Snyder <michsnyd at cisco dot com>
- Date: Sun, 1 May 2005 19:16:56 -0400
- Subject: Re: [RFC] mips_abi_update, flush_cached_frames
- References: <015a01c53655$98481cb0$8ca66b80@msnyder8600> <20050401010040.GA17642@nevyn.them.org>
On Thu, Mar 31, 2005 at 08:00:40PM -0500, Daniel Jacobowitz wrote:
> On Thu, Mar 31, 2005 at 04:56:05PM -0800, Michael Snyder wrote:
> > Check me out here -- if you change the abi, it seems to me
> > you better make sure you get rid of any cached frames...
> >
> > 2005-03-31 msnyder <msnyder@redhat.com>
> >
> > * mips-tdep.c (mips_abi_update): If abi is changed, cached
> > frames better be flushed.
>
> Yes and no - I don't think this is the right place to do it.
> My current feeling is that this belongs in
> deprecated_current_gdbarch_select_hack.
>
> [You're definitely right about the problem, though. I ran into this on
> ARM last week.]
I've committed this more general fix.
--
Daniel Jacobowitz
CodeSourcery, LLC
2005-05-01 Daniel Jacobowitz <dan@codesourcery.com>
* gdbarch.sh (deprecated_current_gdbarch_select_hack): Flush
cached frames when changing gdbarch.
* gdbarch.c: Regenerated.
Index: gdbarch.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbarch.c,v
retrieving revision 1.323
diff -u -p -r1.323 gdbarch.c
--- gdbarch.c 1 May 2005 19:58:52 -0000 1.323
+++ gdbarch.c 1 May 2005 23:13:39 -0000
@@ -4241,6 +4241,7 @@ deprecated_current_gdbarch_select_hack (
current_gdbarch_swap_out_hack ();
current_gdbarch_swap_in_hack (new_gdbarch);
architecture_changed_event ();
+ flush_cached_frames ();
}
extern void _initialize_gdbarch (void);
Index: gdbarch.sh
===================================================================
RCS file: /cvs/src/src/gdb/gdbarch.sh,v
retrieving revision 1.358
diff -u -p -r1.358 gdbarch.sh
--- gdbarch.sh 1 May 2005 19:58:53 -0000 1.358
+++ gdbarch.sh 1 May 2005 23:13:40 -0000
@@ -2216,6 +2216,7 @@ deprecated_current_gdbarch_select_hack (
current_gdbarch_swap_out_hack ();
current_gdbarch_swap_in_hack (new_gdbarch);
architecture_changed_event ();
+ flush_cached_frames ();
}
extern void _initialize_gdbarch (void);