forked from Imagelibrary/binutils-gdb
gdb: move displaced_step_dump_bytes into gdbsupport (and rename)
It was pointed out during review of another patch that the function
displaced_step_dump_bytes really isn't specific to displaced stepping,
and should really get a more generic name and move into gdbsupport/.
This commit does just that. The function is renamed to
bytes_to_string and is moved into gdbsupport/common-utils.{cc,h}. The
function implementation doesn't really change. Much...
... I have updated the function to take an array view, which makes it
slightly easier to call in a couple of places where we already have a
gdb::bytes_vector. I've then added an inline wrapper to convert a raw
pointer and length into an array view, which is used in places where
we don't easily have a gdb::bytes_vector (or similar).
Updated all users of displaced_step_dump_bytes.
There should be no user visible changes after this commit.
Finally, I ended up having to add an include of gdb_assert.h into
array-view.h. When I include array-view.h into common-utils.h I ran
into build problems because array-view.h calls gdb_assert.
Approved-By: Simon Marchi <simon.marchi@efficios.com>
This commit is contained in:
@@ -445,3 +445,21 @@ hex2bin (const char *hex)
|
||||
|
||||
return bin;
|
||||
}
|
||||
|
||||
/* See gdbsupport/common-utils.h. */
|
||||
|
||||
std::string
|
||||
bytes_to_string (gdb::array_view<const gdb_byte> bytes)
|
||||
{
|
||||
std::string ret;
|
||||
|
||||
for (size_t i = 0; i < bytes.size (); i++)
|
||||
{
|
||||
if (i == 0)
|
||||
ret += string_printf ("%02x", bytes[i]);
|
||||
else
|
||||
ret += string_printf (" %02x", bytes[i]);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user