Turn value_arch into method

This changes value_arch to be a method of value.  Much of this patch
was written by script.

Approved-By: Simon Marchi <simon.marchi@efficios.com>
This commit is contained in:
Tom Tromey
2023-01-31 08:31:48 -07:00
parent 81ae560ca4
commit f9ee742cd7
3 changed files with 10 additions and 11 deletions

View File

@ -1045,7 +1045,7 @@ read_value_memory (struct value *val, LONGEST bit_offset,
gdb_byte *buffer, size_t length) gdb_byte *buffer, size_t length)
{ {
ULONGEST xfered_total = 0; ULONGEST xfered_total = 0;
struct gdbarch *arch = get_value_arch (val); struct gdbarch *arch = val->arch ();
int unit_size = gdbarch_addressable_memory_unit_size (arch); int unit_size = gdbarch_addressable_memory_unit_size (arch);
enum target_object object; enum target_object object;

View File

@ -163,9 +163,9 @@ value::~value ()
/* See value.h. */ /* See value.h. */
struct gdbarch * struct gdbarch *
get_value_arch (const struct value *value) value::arch () const
{ {
return value->type ()->arch (); return type ()->arch ();
} }
int int
@ -1074,7 +1074,7 @@ set_value_parent (struct value *value, struct value *parent)
gdb::array_view<gdb_byte> gdb::array_view<gdb_byte>
value_contents_raw (struct value *value) value_contents_raw (struct value *value)
{ {
struct gdbarch *arch = get_value_arch (value); struct gdbarch *arch = value->arch ();
int unit_size = gdbarch_addressable_memory_unit_size (arch); int unit_size = gdbarch_addressable_memory_unit_size (arch);
allocate_value_contents (value, true); allocate_value_contents (value, true);
@ -1251,7 +1251,7 @@ value_contents_copy_raw (struct value *dst, LONGEST dst_offset,
struct value *src, LONGEST src_offset, LONGEST length) struct value *src, LONGEST src_offset, LONGEST length)
{ {
LONGEST src_bit_offset, dst_bit_offset, bit_length; LONGEST src_bit_offset, dst_bit_offset, bit_length;
struct gdbarch *arch = get_value_arch (src); struct gdbarch *arch = src->arch ();
int unit_size = gdbarch_addressable_memory_unit_size (arch); int unit_size = gdbarch_addressable_memory_unit_size (arch);
/* A lazy DST would make that this copy operation useless, since as /* A lazy DST would make that this copy operation useless, since as
@ -2324,7 +2324,7 @@ set_internalvar_component (struct internalvar *var,
{ {
case INTERNALVAR_VALUE: case INTERNALVAR_VALUE:
addr = value_contents_writeable (var->u.value).data (); addr = value_contents_writeable (var->u.value).data ();
arch = get_value_arch (var->u.value); arch = var->u.value->arch ();
unit_size = gdbarch_addressable_memory_unit_size (arch); unit_size = gdbarch_addressable_memory_unit_size (arch);
if (bitsize) if (bitsize)
@ -3048,7 +3048,7 @@ value_primitive_field (struct value *arg1, LONGEST offset,
{ {
struct value *v; struct value *v;
struct type *type; struct type *type;
struct gdbarch *arch = get_value_arch (arg1); struct gdbarch *arch = arg1->arch ();
int unit_size = gdbarch_addressable_memory_unit_size (arch); int unit_size = gdbarch_addressable_memory_unit_size (arch);
arg_type = check_typedef (arg_type); arg_type = check_typedef (arg_type);

View File

@ -170,6 +170,9 @@ struct value
void deprecated_set_type (struct type *type) void deprecated_set_type (struct type *type)
{ m_type = type; } { m_type = type; }
/* Return the gdbarch associated with the value. */
struct gdbarch *arch () const;
/* Type of value; either not an lval, or one of the various /* Type of value; either not an lval, or one of the various
different possible kinds of lval. */ different possible kinds of lval. */
@ -348,10 +351,6 @@ struct value
ULONGEST m_limited_length = 0; ULONGEST m_limited_length = 0;
}; };
/* Return the gdbarch associated with the value. */
extern struct gdbarch *get_value_arch (const struct value *value);
/* Only used for bitfields; number of bits contained in them. */ /* Only used for bitfields; number of bits contained in them. */
extern LONGEST value_bitsize (const struct value *); extern LONGEST value_bitsize (const struct value *);