forked from Imagelibrary/binutils-gdb
* jv-lang.c (get_java_class_symtab): Use allocate_global_block,
set_block_symtab. * jit.c (finalize_symtab): Use allocate_global_block, set_block_symtab. * buildsym.c (finish_block_internal): New function, from old finish_block. (finish_block): Rewrite. (end_symtab): Use finish_block_internal, set_block_symtab. * block.h (struct global_block): New. (allocate_global_block, set_block_symtab): Declare. * block.c (allocate_global_block, set_block_symtab): New functions.
This commit is contained in:
23
gdb/block.c
23
gdb/block.c
@@ -370,6 +370,29 @@ allocate_block (struct obstack *obstack)
|
||||
return bl;
|
||||
}
|
||||
|
||||
/* Allocate a global block. */
|
||||
|
||||
struct block *
|
||||
allocate_global_block (struct obstack *obstack)
|
||||
{
|
||||
struct global_block *bl = OBSTACK_ZALLOC (obstack, struct global_block);
|
||||
|
||||
return &bl->block;
|
||||
}
|
||||
|
||||
/* Set the symtab of the global block. */
|
||||
|
||||
void
|
||||
set_block_symtab (struct block *block, struct symtab *symtab)
|
||||
{
|
||||
struct global_block *gb;
|
||||
|
||||
gdb_assert (BLOCK_SUPERBLOCK (block) == NULL);
|
||||
gb = (struct global_block *) block;
|
||||
gdb_assert (gb->symtab == NULL);
|
||||
gb->symtab = symtab;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* See block.h. */
|
||||
|
||||
Reference in New Issue
Block a user