Avoid using DW_* macros in dwarf2/attribute.c

There's no need to use the DW_* accessor macros in dwarf2/attribute.c,
and this is a necessary step toward our goal of removing them
entirely.

gdb/ChangeLog
2020-09-29  Tom Tromey  <tom@tromey.com>

	* dwarf2/attribute.c (attribute::address): Don't use DW_UNSND or
	DW_ADDR.
	(attribute::string): Don't use DW_STRING.
	(attribute::get_ref_die_offset): Don't use DW_UNSND.
	(attribute::constant_value): Don't use DW_UNSND or DW_SND.
This commit is contained in:
Tom Tromey 2020-09-29 18:49:08 -06:00
parent 95f982e587
commit 6c412691f9
2 changed files with 13 additions and 5 deletions

View file

@ -1,3 +1,11 @@
2020-09-29 Tom Tromey <tom@tromey.com>
* dwarf2/attribute.c (attribute::address): Don't use DW_UNSND or
DW_ADDR.
(attribute::string): Don't use DW_STRING.
(attribute::get_ref_die_offset): Don't use DW_UNSND.
(attribute::constant_value): Don't use DW_UNSND or DW_SND.
2020-09-29 Tom Tromey <tom@tromey.com>
* dwarf2/read.c (dwarf2_find_base_address, read_call_site_scope)

View file

@ -51,10 +51,10 @@ attribute::as_address () const
as well as update callers to pass in at least the CU's DWARF
version. This is more overhead than what we're willing to
expand for a pretty rare case. */
addr = DW_UNSND (this);
addr = u.unsnd;
}
else
addr = DW_ADDR (this);
addr = u.addr;
return addr;
}
@ -73,7 +73,7 @@ attribute::as_string () const
|| form == DW_FORM_strx4
|| form == DW_FORM_GNU_str_index
|| form == DW_FORM_GNU_strp_alt)
return DW_STRING (this);
return u.str;
return nullptr;
}
@ -135,13 +135,13 @@ LONGEST
attribute::constant_value (int default_value) const
{
if (form == DW_FORM_sdata || form == DW_FORM_implicit_const)
return DW_SND (this);
return u.snd;
else if (form == DW_FORM_udata
|| form == DW_FORM_data1
|| form == DW_FORM_data2
|| form == DW_FORM_data4
|| form == DW_FORM_data8)
return DW_UNSND (this);
return u.unsnd;
else
{
/* For DW_FORM_data16 see attribute::form_is_constant. */