]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
gdb: remove TYPE_DATA_LOCATION_ADDR macro
authorSimon Marchi <simon.marchi@polymtl.ca>
Thu, 23 Oct 2025 19:07:01 +0000 (15:07 -0400)
committerSimon Marchi <simon.marchi@efficios.com>
Fri, 24 Oct 2025 15:16:47 +0000 (11:16 -0400)
Remove it in favor of using the dynamic_prop::const_val method directly.

Change-Id: I8dea18d7f504d4ec982b6624342f7a301e8fd636
Approved-By: Tom Tromey <tom@tromey.com>
gdb/gdbtypes.h
gdb/value.c

index e0d0c3431c93b4990d8c82d4c7907800880543aa..e66701c70298a177b556fc1d95ea9ea04dcf451e 100644 (file)
@@ -1931,10 +1931,6 @@ extern unsigned type_align (struct type *);
    space in struct type.  */
 extern bool set_type_align (struct type *, ULONGEST);
 
-/* Property accessors for the type data location.  */
-#define TYPE_DATA_LOCATION_ADDR(thistype) \
-  ((thistype)->dyn_prop (DYN_PROP_DATA_LOCATION)->const_val ())
-
 /* C++ */
 
 #define TYPE_SELF_TYPE(thistype) internal_type_self_type (thistype)
index 7e530757567cecb4575aa9ce8f3395c25ca8e876..7ee212ab2a2028a16921b4cd0726f13ee4e77a61 100644 (file)
@@ -1420,12 +1420,15 @@ value::address () const
 {
   if (m_lval != lval_memory)
     return 0;
+
   if (m_parent != NULL)
     return m_parent->address () + m_offset;
-  if (NULL != type ()->dyn_prop (DYN_PROP_DATA_LOCATION))
+
+  if (dynamic_prop *dyn_prop = type ()->dyn_prop (DYN_PROP_DATA_LOCATION);
+      dyn_prop != nullptr)
     {
-      gdb_assert (type ()->dyn_prop (DYN_PROP_DATA_LOCATION)->is_constant ());
-      return TYPE_DATA_LOCATION_ADDR (type ());
+      gdb_assert (dyn_prop->is_constant ());
+      return dyn_prop->const_val ();
     }
 
   return m_location.address + m_offset;
@@ -1658,15 +1661,15 @@ value::set_component_location (const struct value *whole)
   /* If the WHOLE value has a dynamically resolved location property then
      update the address of the COMPONENT.  */
   type = whole->type ();
-  if (NULL != type->dyn_prop (DYN_PROP_DATA_LOCATION)
-      && type->dyn_prop (DYN_PROP_DATA_LOCATION)->is_constant ())
-    set_address (TYPE_DATA_LOCATION_ADDR (type));
+  if (dynamic_prop *dyn_prop = type->dyn_prop (DYN_PROP_DATA_LOCATION);
+      dyn_prop != nullptr && dyn_prop->is_constant ())
+    set_address (dyn_prop->const_val ());
 
   /* Similarly, if the COMPONENT value has a dynamically resolved location
      property then update its address.  */
   type = this->type ();
-  if (NULL != type->dyn_prop (DYN_PROP_DATA_LOCATION)
-      && type->dyn_prop (DYN_PROP_DATA_LOCATION)->is_constant ())
+  if (dynamic_prop *dyn_prop = type->dyn_prop (DYN_PROP_DATA_LOCATION);
+      dyn_prop != nullptr && dyn_prop->is_constant ())
     {
       /* If the COMPONENT has a dynamic location, and is an
         lval_internalvar_component, then we change it to a lval_memory.
@@ -1692,7 +1695,8 @@ value::set_component_location (const struct value *whole)
        }
       else
        gdb_assert (this->lval () == lval_memory);
-      set_address (TYPE_DATA_LOCATION_ADDR (type));
+
+      set_address (dyn_prop->const_val ());
     }
 }
 
@@ -3683,9 +3687,12 @@ value_from_contents_and_address (struct type *type,
     v = value::allocate_lazy (resolved_type);
   else
     v = value_from_contents (resolved_type, valaddr);
-  if (resolved_type_no_typedef->dyn_prop (DYN_PROP_DATA_LOCATION) != NULL
-      && resolved_type_no_typedef->dyn_prop (DYN_PROP_DATA_LOCATION)->is_constant ())
-    address = TYPE_DATA_LOCATION_ADDR (resolved_type_no_typedef);
+
+  if (dynamic_prop *dyn_prop
+       = resolved_type_no_typedef->dyn_prop (DYN_PROP_DATA_LOCATION);
+      dyn_prop != nullptr && dyn_prop->is_constant ())
+    address = dyn_prop->const_val ();
+
   v->set_lval (lval_memory);
   v->set_address (address);
   return v;