diff options
author | Daniel Jacobowitz <drow@false.org> | 2006-02-01 23:14:11 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@false.org> | 2006-02-01 23:14:11 +0000 |
commit | ae5a43e0c91c4be8e22492ad4c1407ac7b2fcb18 (patch) | |
tree | 30185e9896a6c41894cda4928a6d9510ae2dbe29 /gdb/gdbtypes.h | |
parent | daily update (diff) | |
download | binutils-gdb-ae5a43e0c91c4be8e22492ad4c1407ac7b2fcb18.tar.gz binutils-gdb-ae5a43e0c91c4be8e22492ad4c1407ac7b2fcb18.tar.bz2 binutils-gdb-ae5a43e0c91c4be8e22492ad4c1407ac7b2fcb18.zip |
gdb/
* Makefile.in (gdbtypes_h, gdbtypes.o, utils.o): Update.
* defs.h (hashtab_obstack_allocate, dummy_obstack_deallocate): Add
prototypes.
* dwarf2read.c (read_subroutine_type): Use TYPE_ZALLOC.
(hashtab_obstack_allocate, dummy_obstack_deallocate): Moved to...
* utils.c (hashtab_obstack_allocate, dummy_obstack_deallocate):
...here.
* gdbtypes.c: Include "hashtab.h".
(build_gdbtypes): Remove extra prototype.
(struct type_pair, type_pair_hash, type_pair_eq)
(create_copied_types_hash, copy_type_recursive): New.
* gdbtypes.h: Include "hashtab.h".
(TYPE_ZALLOC): New.
(create_copied_types_hash, copy_type_recursive): New prototypes.
* objfiles.c (free_objfile): Call preserve_values.
* symfile.c (reread_symbols): Likewise.
(clear_symtab_users): Remove calls to clear_value_history and
clear_internalvars.
* value.c (clear_value_history, clear_internalvars): Removed.
(preserve_one_value, preserve_values): New functions.
* value.h (clear_value_history, clear_internalvars): Removed.
(preserve_values): New prototype.
* tracepoint.c (_initialize_tracepoint): Do not initialize convenience
variables here.
gdb/doc/
* gdb.texinfo (Files): Remove obsolete bits from the description
of "symbol-file".
Diffstat (limited to 'gdb/gdbtypes.h')
-rw-r--r-- | gdb/gdbtypes.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h index de451d5d99d..944e5f12bed 100644 --- a/gdb/gdbtypes.h +++ b/gdb/gdbtypes.h @@ -25,6 +25,8 @@ #if !defined (GDBTYPES_H) #define GDBTYPES_H 1 +#include "hashtab.h" + /* Forward declarations for prototypes. */ struct field; struct block; @@ -1176,6 +1178,12 @@ extern struct type *builtin_type_f_void; ? obstack_alloc (&TYPE_OBJFILE (t) -> objfile_obstack, size) \ : xmalloc (size)) +#define TYPE_ZALLOC(t,size) \ + (TYPE_OBJFILE (t) != NULL \ + ? memset (obstack_alloc (&TYPE_OBJFILE (t)->objfile_obstack, size), \ + 0, size) \ + : xzalloc (size)) + extern struct type *alloc_type (struct objfile *); extern struct type *init_type (enum type_code, int, int, char *, @@ -1371,4 +1379,10 @@ extern int is_integral_type (struct type *); extern void maintenance_print_type (char *, int); +extern htab_t create_copied_types_hash (struct objfile *objfile); + +extern struct type *copy_type_recursive (struct objfile *objfile, + struct type *type, + htab_t copied_types); + #endif /* GDBTYPES_H */ |