From 6c412691f9a2c9adaa3fdd057dcad6dcd68f13ec Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Tue, 29 Sep 2020 18:49:08 -0600 Subject: [PATCH] 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 * 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. --- gdb/ChangeLog | 8 ++++++++ gdb/dwarf2/attribute.c | 10 +++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b561f8a8302..b78cffe5978 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2020-09-29 Tom Tromey + + * 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 * dwarf2/read.c (dwarf2_find_base_address, read_call_site_scope) diff --git a/gdb/dwarf2/attribute.c b/gdb/dwarf2/attribute.c index 1345e0a3f86..af24d660918 100644 --- a/gdb/dwarf2/attribute.c +++ b/gdb/dwarf2/attribute.c @@ -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. */ -- 2.30.2