gdb: remove BLOCKVECTOR_MAP macro
authorSimon Marchi <simon.marchi@polymtl.ca>
Wed, 20 Apr 2022 21:17:11 +0000 (17:17 -0400)
committerSimon Marchi <simon.marchi@polymtl.ca>
Thu, 28 Apr 2022 02:05:03 +0000 (22:05 -0400)
Replace with equivalent methods.

Change-Id: I4e56c76dfc363c1447686fb29c4212ea18b4dba0

gdb/block.c
gdb/block.h
gdb/buildsym.c
gdb/inline-frame.c
gdb/jit.c
gdb/objfiles.c
gdb/symtab.c

index 1c3a0030fd48555fb6d21ad9b8f1d5e87be82d81..39a39df9454c17d6cf953dd3e4ad4160b87d1483 100644 (file)
@@ -138,8 +138,8 @@ find_block_in_blockvector (const struct blockvector *bl, CORE_ADDR pc)
 
   /* If we have an addrmap mapping code addresses to blocks, then use
      that.  */
-  if (BLOCKVECTOR_MAP (bl))
-    return (const struct block *) addrmap_find (BLOCKVECTOR_MAP (bl), pc);
+  if (bl->map () != nullptr)
+    return (const struct block *) addrmap_find (bl->map (), pc);
 
   /* Otherwise, use binary search to find the last block that starts
      before PC.
index b6b8b86f3333b912af54c79df970f168b7965a2c..b9f4e974c040a7993673268df13b89cc7213865e 100644 (file)
@@ -296,12 +296,24 @@ struct blockvector
   const struct block *static_block () const
   { return this->block (STATIC_BLOCK); }
 
+  /* Return the address -> block map of this blockvector.  */
+  addrmap *map ()
+  { return m_map; }
+
+  /* Const version of the above.  */
+  const addrmap *map () const
+  { return m_map; }
+
+  /* Set this blockvector's address -> block map.  */
+  void set_map (addrmap *map)
+  { m_map = map; }
+
+private:
   /* An address map mapping addresses to blocks in this blockvector.
      This pointer is zero if the blocks' start and end addresses are
      enough.  */
-  struct addrmap *map;
+  struct addrmap *m_map;
 
-private:
   /* Number of blocks in the list.  */
   int m_num_blocks;
 
@@ -309,8 +321,6 @@ private:
   struct block *m_blocks[1];
 };
 
-#define BLOCKVECTOR_MAP(blocklist) ((blocklist)->map)
-
 /* Return the objfile of BLOCK, which must be non-NULL.  */
 
 extern struct objfile *block_objfile (const struct block *block);
index 48cd9679b8f558510450c67544dc9b44122255dd..c54e6586cedb7072cdbc2d8345b35249db0dd5f7 100644 (file)
@@ -457,10 +457,10 @@ buildsym_compunit::make_blockvector ()
   /* If we needed an address map for this symtab, record it in the
      blockvector.  */
   if (m_pending_addrmap != nullptr && m_pending_addrmap_interesting)
-    BLOCKVECTOR_MAP (blockvector)
-      = addrmap_create_fixed (m_pending_addrmap, &m_objfile->objfile_obstack);
+    blockvector->set_map
+      (addrmap_create_fixed (m_pending_addrmap, &m_objfile->objfile_obstack));
   else
-    BLOCKVECTOR_MAP (blockvector) = 0;
+    blockvector->set_map (nullptr);
 
   /* Some compilers output blocks in the wrong order, but we depend on
      their being in the right order so we can binary search.  Check the
index c502674b1d42980ebf6be55d1525003d9e8813bc..57b58f38c220b41154cca32709fa80533857231a 100644 (file)
@@ -286,11 +286,10 @@ block_starting_point_at (CORE_ADDR pc, const struct block *block)
   const struct block *new_block;
 
   bv = blockvector_for_pc (pc, NULL);
-  if (BLOCKVECTOR_MAP (bv) == NULL)
+  if (bv->map () == nullptr)
     return 0;
 
-  new_block = (const struct block *) addrmap_find (BLOCKVECTOR_MAP (bv),
-                                                  pc - 1);
+  new_block = (const struct block *) addrmap_find (bv->map (), pc - 1);
   if (new_block == NULL)
     return 1;
 
index 9f2df719a8db1ce7a572f2192f655730f5e3271b..b4a070bb8796d85e4ba6d914898b37963a49f5f7 100644 (file)
--- a/gdb/jit.c
+++ b/gdb/jit.c
@@ -562,7 +562,7 @@ finalize_symtab (struct gdb_symtab *stab, struct objfile *objfile)
 
   /* At the end of this function, (begin, end) will contain the PC range this
      entire blockvector spans.  */
-  BLOCKVECTOR_MAP (bv) = NULL;
+  bv->set_map (nullptr);
   begin = stab->blocks.front ().begin;
   end = stab->blocks.front ().end;
   bv->set_num_blocks (actual_nblocks);
index 0fec5231106a5e7eeacf1b7237b82f26d1d21052..3f18e98710b573b5fb7750a038e7fb1690aa0f00 100644 (file)
@@ -667,8 +667,8 @@ objfile_relocate1 (struct objfile *objfile,
        struct blockvector *bv = cust->blockvector ();
        int block_line_section = cust->block_line_section ();
 
-       if (BLOCKVECTOR_MAP (bv))
-         addrmap_relocate (BLOCKVECTOR_MAP (bv), delta[block_line_section]);
+       if (bv->map () != nullptr)
+         addrmap_relocate (bv->map (), delta[block_line_section]);
 
        for (block *b : bv->blocks ())
          {
index 31e7160a186e7eadf389862233e69e89c99304b4..4b33d6c91af8921b9b0626dd33a6f7cd4c8415f9 100644 (file)
@@ -2987,9 +2987,9 @@ find_pc_sect_compunit_symtab (CORE_ADDR pc, struct obj_section *section)
          if (!in_range_p)
            continue;
 
-         if (BLOCKVECTOR_MAP (bv))
+         if (bv->map () != nullptr)
            {
-             if (addrmap_find (BLOCKVECTOR_MAP (bv), pc) == nullptr)
+             if (addrmap_find (bv->map (), pc) == nullptr)
                continue;
 
              return cust;