This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] mips_abi_update, flush_cached_frames


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);


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]