Move the thread_section_name class to gdbcore.h.
This allows it to be used outside of corelow.c.
This commit is contained in:
parent
929edea98d
commit
6e5eab33ab
@ -1,3 +1,8 @@
|
||||
2017-07-07 John Baldwin <jhb@FreeBSD.org>
|
||||
|
||||
* corelow.c (thread_section_name): Move to ...
|
||||
* gdbcore.h (thread_section_name): ... here.
|
||||
|
||||
2017-07-07 John Baldwin <jhb@FreeBSD.org>
|
||||
|
||||
* fbsd-nat.c [PT_LWPINFO && __LP64__] (union sigval32)
|
||||
|
@ -485,51 +485,6 @@ core_detach (struct target_ops *ops, const char *args, int from_tty)
|
||||
printf_filtered (_("No core file now.\n"));
|
||||
}
|
||||
|
||||
/* Build either a single-thread or multi-threaded section name for
|
||||
PTID.
|
||||
|
||||
If ptid's lwp member is zero, we want to do the single-threaded
|
||||
thing: look for a section named NAME (as passed to the
|
||||
constructor). If ptid's lwp member is non-zero, we'll want do the
|
||||
multi-threaded thing: look for a section named "NAME/LWP", where
|
||||
LWP is the shortest ASCII decimal representation of ptid's lwp
|
||||
member. */
|
||||
|
||||
class thread_section_name
|
||||
{
|
||||
public:
|
||||
/* NAME is the single-threaded section name. If PTID represents an
|
||||
LWP, then the build section name is "NAME/LWP", otherwise it's
|
||||
just "NAME" unmodified. */
|
||||
thread_section_name (const char *name, ptid_t ptid)
|
||||
{
|
||||
if (ptid.lwp_p ())
|
||||
{
|
||||
m_storage = string_printf ("%s/%ld", name, ptid.lwp ());
|
||||
m_section_name = m_storage.c_str ();
|
||||
}
|
||||
else
|
||||
m_section_name = name;
|
||||
}
|
||||
|
||||
/* Return the computed section name. The result is valid as long as
|
||||
this thread_section_name object is live. */
|
||||
const char *c_str () const
|
||||
{ return m_section_name; }
|
||||
|
||||
/* Disable copy. */
|
||||
thread_section_name (const thread_section_name &) = delete;
|
||||
void operator= (const thread_section_name &) = delete;
|
||||
|
||||
private:
|
||||
/* Either a pointer into M_STORAGE, or a pointer to the name passed
|
||||
as parameter to the constructor. */
|
||||
const char *m_section_name;
|
||||
/* If we need to build a new section name, this is where we store
|
||||
it. */
|
||||
std::string m_storage;
|
||||
};
|
||||
|
||||
/* Try to retrieve registers from a section in core_bfd, and supply
|
||||
them to core_vec->core_read_registers, as the register set numbered
|
||||
WHICH.
|
||||
|
@ -226,6 +226,51 @@ struct core_fns
|
||||
|
||||
};
|
||||
|
||||
/* Build either a single-thread or multi-threaded section name for
|
||||
PTID.
|
||||
|
||||
If ptid's lwp member is zero, we want to do the single-threaded
|
||||
thing: look for a section named NAME (as passed to the
|
||||
constructor). If ptid's lwp member is non-zero, we'll want do the
|
||||
multi-threaded thing: look for a section named "NAME/LWP", where
|
||||
LWP is the shortest ASCII decimal representation of ptid's lwp
|
||||
member. */
|
||||
|
||||
class thread_section_name
|
||||
{
|
||||
public:
|
||||
/* NAME is the single-threaded section name. If PTID represents an
|
||||
LWP, then the build section name is "NAME/LWP", otherwise it's
|
||||
just "NAME" unmodified. */
|
||||
thread_section_name (const char *name, ptid_t ptid)
|
||||
{
|
||||
if (ptid.lwp_p ())
|
||||
{
|
||||
m_storage = string_printf ("%s/%ld", name, ptid.lwp ());
|
||||
m_section_name = m_storage.c_str ();
|
||||
}
|
||||
else
|
||||
m_section_name = name;
|
||||
}
|
||||
|
||||
/* Return the computed section name. The result is valid as long as
|
||||
this thread_section_name object is live. */
|
||||
const char *c_str () const
|
||||
{ return m_section_name; }
|
||||
|
||||
/* Disable copy. */
|
||||
thread_section_name (const thread_section_name &) = delete;
|
||||
void operator= (const thread_section_name &) = delete;
|
||||
|
||||
private:
|
||||
/* Either a pointer into M_STORAGE, or a pointer to the name passed
|
||||
as parameter to the constructor. */
|
||||
const char *m_section_name;
|
||||
/* If we need to build a new section name, this is where we store
|
||||
it. */
|
||||
std::string m_storage;
|
||||
};
|
||||
|
||||
/* NOTE: cagney/2004-04-05: Replaced by "regset.h" and
|
||||
regset_from_core_section(). */
|
||||
extern void deprecated_add_core_fns (struct core_fns *cf);
|
||||
|
Loading…
Reference in New Issue
Block a user