From: Tom Tromey Date: Fri, 20 Jan 2023 14:16:34 +0000 (-0700) Subject: Remove allocate_block and allocate_global_block X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=522553837be31e09d182a8974429650f68c108f3;p=binutils-gdb.git Remove allocate_block and allocate_global_block This removes allocate_block and allocate_global_block in favor of simply calling 'new'. --- diff --git a/gdb/block.c b/gdb/block.c index 1698ee51e7b..334d8180448 100644 --- a/gdb/block.c +++ b/gdb/block.c @@ -377,29 +377,6 @@ block::global_block () const return block; } -/* Allocate a block on OBSTACK, and initialize its elements to - zero/NULL. This is useful for creating "dummy" blocks that don't - correspond to actual source files. - - Warning: it sets the block's BLOCK_MULTIDICT to NULL, which isn't a - valid value. If you really don't want the block to have a - dictionary, then you should subsequently set its BLOCK_MULTIDICT to - dict_create_linear (obstack, NULL). */ - -struct block * -allocate_block (struct obstack *obstack) -{ - return new (obstack) struct block; -} - -/* Allocate a global block. */ - -struct block * -allocate_global_block (struct obstack *obstack) -{ - return new (obstack) struct global_block; -} - /* See block.h. */ void diff --git a/gdb/block.h b/gdb/block.h index 3d71e7daab1..7c40bae9af2 100644 --- a/gdb/block.h +++ b/gdb/block.h @@ -426,10 +426,6 @@ extern const struct block *block_for_pc (CORE_ADDR); extern const struct block *block_for_pc_sect (CORE_ADDR, struct obj_section *); -extern struct block *allocate_block (struct obstack *obstack); - -extern struct block *allocate_global_block (struct obstack *obstack); - /* A block iterator. This structure should be treated as though it were opaque; it is only defined here because we want to support stack allocation of iterators. */ diff --git a/gdb/buildsym.c b/gdb/buildsym.c index 10b8fc6cecb..dbc81727cb1 100644 --- a/gdb/buildsym.c +++ b/gdb/buildsym.c @@ -211,9 +211,10 @@ buildsym_compunit::finish_block_internal struct pending_block *pblock; struct pending_block *opblock; - block = (is_global - ? allocate_global_block (&m_objfile->objfile_obstack) - : allocate_block (&m_objfile->objfile_obstack)); + if (is_global) + block = new (&m_objfile->objfile_obstack) global_block; + else + block = new (&m_objfile->objfile_obstack) struct block; if (symbol) { diff --git a/gdb/jit.c b/gdb/jit.c index f584438c229..0b089bc6a82 100644 --- a/gdb/jit.c +++ b/gdb/jit.c @@ -567,7 +567,7 @@ finalize_symtab (struct gdb_symtab *stab, struct objfile *objfile) int block_idx = FIRST_LOCAL_BLOCK; for (gdb_block &gdb_block_iter : stab->blocks) { - struct block *new_block = allocate_block (&objfile->objfile_obstack); + struct block *new_block = new (&objfile->objfile_obstack) block; struct symbol *block_name = new (&objfile->objfile_obstack) symbol; struct type *block_type = arch_type (objfile->arch (), TYPE_CODE_VOID, @@ -609,9 +609,10 @@ finalize_symtab (struct gdb_symtab *stab, struct objfile *objfile) { struct block *new_block; - new_block = (i == GLOBAL_BLOCK - ? allocate_global_block (&objfile->objfile_obstack) - : allocate_block (&objfile->objfile_obstack)); + if (i == GLOBAL_BLOCK) + new_block = new (&objfile->objfile_obstack) global_block; + else + new_block = new (&objfile->objfile_obstack) block; new_block->set_multidict (mdict_create_linear (&objfile->objfile_obstack, NULL)); new_block->set_superblock (block_iter); diff --git a/gdb/mdebugread.c b/gdb/mdebugread.c index 17038639fa8..793795c903a 100644 --- a/gdb/mdebugread.c +++ b/gdb/mdebugread.c @@ -4723,7 +4723,7 @@ static struct block * new_block (struct objfile *objfile, enum block_type type, enum language language) { - struct block *retval = allocate_block (&objfile->objfile_obstack); + struct block *retval = new (&objfile->objfile_obstack) block; if (type == FUNCTION_BLOCK) retval->set_multidict (mdict_create_linear_expandable (language));