[1/3] Use addrmap_fixed in a few spots

Message ID 20240227-obstac-alloc-v1-1-bd079aad35cd@adacore.com
State New
Headers
Series Make allocate_on_obstack a bit safer |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gdb_build--master-aarch64 success Testing passed
linaro-tcwg-bot/tcwg_gdb_build--master-arm success Testing passed
linaro-tcwg-bot/tcwg_gdb_check--master-aarch64 fail Testing failed
linaro-tcwg-bot/tcwg_gdb_check--master-arm success Testing passed

Commit Message

Tom Tromey Feb. 27, 2024, 9:42 p.m. UTC
  There are a few spots in the tree that use 'addrmap' where only an
addrmap_fixed will ever really be seen.  This patch changes this code
to use the more specific type.
---
 gdb/block.h               | 10 +++++-----
 gdb/dwarf2/cooked-index.h |  2 +-
 gdb/dwarf2/read.h         |  2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)
  

Comments

Alexandra Petlanova Hajkova Feb. 28, 2024, 12:27 p.m. UTC | #1
On Tue, Feb 27, 2024 at 10:42 PM Tom Tromey <tromey@adacore.com> wrote:

> There are a few spots in the tree that use 'addrmap' where only an
> addrmap_fixed will ever really be seen.  This patch changes this code
> to use the more specific type.
> ---
>  gdb/block.h               | 10 +++++-----
>  gdb/dwarf2/cooked-index.h |  2 +-
>  gdb/dwarf2/read.h         |  2 +-
>  3 files changed, 7 insertions(+), 7 deletions(-)
>
>
>
A reasonable change. I can confirm this change does not introduce any
regressions on aarch64 with Fedora Rawhide.
  

Patch

diff --git a/gdb/block.h b/gdb/block.h
index 00630123120..4c29f6599ef 100644
--- a/gdb/block.h
+++ b/gdb/block.h
@@ -30,7 +30,7 @@  struct compunit_symtab;
 struct block_namespace_info;
 struct using_direct;
 struct obstack;
-struct addrmap;
+struct addrmap_fixed;
 
 /* Blocks can occupy non-contiguous address ranges.  When this occurs,
    startaddr and endaddr within struct block (still) specify the lowest
@@ -410,22 +410,22 @@  struct blockvector
   { return this->block (STATIC_BLOCK); }
 
   /* Return the address -> block map of this blockvector.  */
-  addrmap *map ()
+  addrmap_fixed *map ()
   { return m_map; }
 
   /* Const version of the above.  */
-  const addrmap *map () const
+  const addrmap_fixed *map () const
   { return m_map; }
 
   /* Set this blockvector's address -> block map.  */
-  void set_map (addrmap *map)
+  void set_map (addrmap_fixed *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 *m_map;
+  addrmap_fixed *m_map;
 
   /* Number of blocks in the list.  */
   int m_num_blocks;
diff --git a/gdb/dwarf2/cooked-index.h b/gdb/dwarf2/cooked-index.h
index 629a5b6b9ee..928c4ef655c 100644
--- a/gdb/dwarf2/cooked-index.h
+++ b/gdb/dwarf2/cooked-index.h
@@ -362,7 +362,7 @@  class cooked_index_shard
   cooked_index_entry *m_main = nullptr;
   /* The addrmap.  This maps address ranges to dwarf2_per_cu_data
      objects.  */
-  addrmap *m_addrmap = nullptr;
+  addrmap_fixed *m_addrmap = nullptr;
   /* Storage for canonical names.  */
   std::vector<gdb::unique_xmalloc_ptr<char>> m_names;
 };
diff --git a/gdb/dwarf2/read.h b/gdb/dwarf2/read.h
index 5ee7e09a743..73def88c4c0 100644
--- a/gdb/dwarf2/read.h
+++ b/gdb/dwarf2/read.h
@@ -536,7 +536,7 @@  struct dwarf2_per_bfd
     abstract_to_concrete;
 
   /* The address map that is used by the DWARF index code.  */
-  struct addrmap *index_addrmap = nullptr;
+  addrmap_fixed *index_addrmap = nullptr;
 };
 
 /* An iterator for all_units that is based on index.  This