From 245342432eaccc1cb2375af4ce0bd8a636c411aa Mon Sep 17 00:00:00 2001 From: Andreas Arnez Date: Fri, 22 Nov 2013 18:43:00 +0000 Subject: [PATCH] MN10300: Replace regset_alloc() invocations by static regset structures. On this architecture the change may fix a small memory leak. --- gdb/ChangeLog | 7 +++++++ gdb/mn10300-linux-tdep.c | 21 ++++++++++++--------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 989aa3fb211..dbff8772ac9 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2014-05-21 Andreas Arnez + + * mn10300-linux-tdep.c (am33_gregset, am33_fpregset): New static + regset structures. + (am33_regset_from_core_section): Remove dynamic regset + allocations. + 2014-05-21 Andreas Arnez * mips-linux-tdep.c (mips_linux_gregset, mips64_linux_gregset) diff --git a/gdb/mn10300-linux-tdep.c b/gdb/mn10300-linux-tdep.c index 6acae56dbb1..4377463267c 100644 --- a/gdb/mn10300-linux-tdep.c +++ b/gdb/mn10300-linux-tdep.c @@ -451,6 +451,16 @@ am33_collect_fpregset_method (const struct regset *regset, return; } +static const struct regset am33_gregset = + { + NULL, am33_supply_gregset_method, am33_collect_gregset_method + }; + +static const struct regset am33_fpregset = + { + NULL, am33_supply_fpregset_method, am33_collect_fpregset_method + }; + /* Create a struct regset from a corefile register section. */ static const struct regset * @@ -458,17 +468,10 @@ am33_regset_from_core_section (struct gdbarch *gdbarch, const char *sect_name, size_t sect_size) { - /* We will call regset_alloc, and pass the names of the supply and - collect methods. */ - if (sect_size == sizeof (mn10300_elf_fpregset_t)) - return regset_alloc (gdbarch, - am33_supply_fpregset_method, - am33_collect_fpregset_method); + return &am33_fpregset; else - return regset_alloc (gdbarch, - am33_supply_gregset_method, - am33_collect_gregset_method); + return &am33_gregset; } static void -- 2.30.2