2004-02-09 Elena Zannoni <ezannoni@redhat.com>
* bcache.c (bcache_xmalloc): Use obstack_init instead of obstack_specify_allocation. * objfiles.c (allocate_objfile): Ditto. * solib-sunos.c (solib_add_common_symbols) (allocate_rt_common_objfile): Ditto. * symfile.c (reread_symbols): Ditto. * gdb_obstack.h: Add comment.
This commit is contained in:
parent
f80e2ec4e8
commit
1ab216172b
6 changed files with 31 additions and 11 deletions
|
@ -1,3 +1,13 @@
|
|||
2004-02-09 Elena Zannoni <ezannoni@redhat.com>
|
||||
|
||||
* bcache.c (bcache_xmalloc): Use obstack_init instead of
|
||||
obstack_specify_allocation.
|
||||
* objfiles.c (allocate_objfile): Ditto.
|
||||
* solib-sunos.c (solib_add_common_symbols)
|
||||
(allocate_rt_common_objfile): Ditto.
|
||||
* symfile.c (reread_symbols): Ditto.
|
||||
* gdb_obstack.h: Add comment.
|
||||
|
||||
2004-02-09 Elena Zannoni <ezannoni@redhat.com>
|
||||
|
||||
* linespec.c (decode_line_1, locate_first_half)
|
||||
|
|
|
@ -266,7 +266,10 @@ bcache_xmalloc (void)
|
|||
{
|
||||
/* Allocate the bcache pre-zeroed. */
|
||||
struct bcache *b = XCALLOC (1, struct bcache);
|
||||
obstack_specify_allocation (&b->cache, 0, 0, xmalloc, xfree);
|
||||
/* We could use obstack_specify_allocation here instead, but
|
||||
gdb_obstack.h specifies the allocation/deallocation
|
||||
functions. */
|
||||
obstack_init (&b->cache);
|
||||
return b;
|
||||
}
|
||||
|
||||
|
|
|
@ -26,6 +26,13 @@
|
|||
|
||||
/* Unless explicitly specified, GDB obstacks always use xmalloc() and
|
||||
xfree(). */
|
||||
/* Note: ezannoni 2004-02-09: One could also specify the allocation
|
||||
functions using a special init function for each obstack,
|
||||
obstack_specify_allocation. However we just use obstack_init and
|
||||
let these defines here do the job. While one could argue the
|
||||
superiority of one approach over the other, we just chose one
|
||||
throughout. */
|
||||
|
||||
#define obstack_chunk_alloc xmalloc
|
||||
#define obstack_chunk_free xfree
|
||||
|
||||
|
|
|
@ -165,8 +165,9 @@ allocate_objfile (bfd *abfd, int flags)
|
|||
objfile->md = NULL;
|
||||
objfile->psymbol_cache = bcache_xmalloc ();
|
||||
objfile->macro_cache = bcache_xmalloc ();
|
||||
obstack_specify_allocation (&objfile->objfile_obstack, 0, 0, xmalloc,
|
||||
xfree);
|
||||
/* We could use obstack_specify_allocation here instead, but
|
||||
gdb_obstack.h specifies the alloc/dealloc functions. */
|
||||
obstack_init (&objfile->objfile_obstack);
|
||||
terminate_minimal_symbol_table (objfile);
|
||||
}
|
||||
|
||||
|
|
|
@ -145,8 +145,7 @@ allocate_rt_common_objfile (void)
|
|||
objfile->md = NULL;
|
||||
objfile->psymbol_cache = bcache_xmalloc ();
|
||||
objfile->macro_cache = bcache_xmalloc ();
|
||||
obstack_specify_allocation (&objfile->objfile_obstack, 0, 0, xmalloc,
|
||||
xfree);
|
||||
obstack_init (&objfile->objfile_obstack);
|
||||
objfile->name = mstrsave (objfile->md, "rt_common");
|
||||
|
||||
/* Add this file onto the tail of the linked list of other such files. */
|
||||
|
@ -182,8 +181,7 @@ solib_add_common_symbols (CORE_ADDR rtc_symp)
|
|||
if (rt_common_objfile != NULL && rt_common_objfile->minimal_symbol_count)
|
||||
{
|
||||
obstack_free (&rt_common_objfile->objfile_obstack, 0);
|
||||
obstack_specify_allocation (&rt_common_objfile->objfile_obstack, 0, 0,
|
||||
xmalloc, xfree);
|
||||
obstack_init (&rt_common_objfile->objfile_obstack);
|
||||
rt_common_objfile->minimal_symbol_count = 0;
|
||||
rt_common_objfile->msymbols = NULL;
|
||||
terminate_minimal_symbol_table (rt_common_objfile);
|
||||
|
|
|
@ -1933,12 +1933,13 @@ reread_symbols (void)
|
|||
|
||||
/* We never make this a mapped file. */
|
||||
objfile->md = NULL;
|
||||
/* obstack_specify_allocation also initializes the obstack so
|
||||
it is empty. */
|
||||
objfile->psymbol_cache = bcache_xmalloc ();
|
||||
objfile->macro_cache = bcache_xmalloc ();
|
||||
obstack_specify_allocation (&objfile->objfile_obstack, 0, 0,
|
||||
xmalloc, xfree);
|
||||
/* obstack_init also initializes the obstack so it is
|
||||
empty. We could use obstack_specify_allocation but
|
||||
gdb_obstack.h specifies the alloc/dealloc
|
||||
functions. */
|
||||
obstack_init (&objfile->objfile_obstack);
|
||||
if (build_objfile_section_table (objfile))
|
||||
{
|
||||
error ("Can't find the file sections in `%s': %s",
|
||||
|
|
Loading…
Add table
Reference in a new issue