forked from Imagelibrary/binutils-gdb
Remove make_cleanup_regcache_xfree
This removes make_cleanup_regcache_xfree in favor of using std::unique_ptr as the return type of frame_save_as_regcache. gdb/ChangeLog 2017-09-25 Tom Tromey <tom@tromey.com> * spu-tdep.c (spu2ppu_sniffer): Update. * regcache.h (make_cleanup_regcache_xfree): Don't declare. * regcache.c (do_regcache_xfree, make_cleanup_regcache_xfree): Remove. * ppc-linux-tdep.c (ppu2spu_sniffer): Update. * mi/mi-main.c (mi_cmd_data_list_changed_registers): Update. * frame.h (frame_save_as_regcache): Return std::unique_ptr. * frame.c (frame_save_as_regcache): Return std::unique_ptr. (frame_pop): Update.
This commit is contained in:
@@ -1363,13 +1363,12 @@ ppu2spu_sniffer (const struct frame_unwind *self,
|
||||
= FRAME_OBSTACK_CALLOC (1, struct ppu2spu_cache);
|
||||
|
||||
struct address_space *aspace = get_frame_address_space (this_frame);
|
||||
struct regcache *regcache = new regcache (data.gdbarch, aspace);
|
||||
struct cleanup *cleanups = make_cleanup_regcache_xfree (regcache);
|
||||
regcache_save (regcache, ppu2spu_unwind_register, &data);
|
||||
discard_cleanups (cleanups);
|
||||
std::unique_ptr<struct regcache> regcache
|
||||
(new struct regcache (data.gdbarch, aspace));
|
||||
regcache_save (regcache.get (), ppu2spu_unwind_register, &data);
|
||||
|
||||
cache->frame_id = frame_id_build (base, func);
|
||||
cache->regcache = regcache;
|
||||
cache->regcache = regcache.release ();
|
||||
*this_prologue_cache = cache;
|
||||
return 1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user