diff options
author | Doug Evans <xdje42@gmail.com> | 2014-12-23 07:55:39 -0800 |
---|---|---|
committer | Doug Evans <xdje42@gmail.com> | 2014-12-23 07:58:14 -0800 |
commit | 1994afbf19892c9e614a034fbf1a5233e9addce3 (patch) | |
tree | af1c6640f99921a6f636e860dc10914dc53cedea /gdb/ChangeLog | |
parent | 9d7b48dc6e8415e95f5228a6f66b414827eb0204 (diff) | |
download | gdb-1994afbf19892c9e614a034fbf1a5233e9addce3.zip gdb-1994afbf19892c9e614a034fbf1a5233e9addce3.tar.gz gdb-1994afbf19892c9e614a034fbf1a5233e9addce3.tar.bz2 |
Look up primitive types as symbols.
gdb/ChangeLog:
* ada-lang.c (user_select_syms): Only fetch symtab if symbol is
objfile-owned.
(cache_symbol): Ignore symbols that are not objfile-owned.
* block.c (block_objfile): New function.
(block_gdbarch): New function.
* block.h (block_objfile): Declare.
(block_gdbarch): Declare.
* c-exp.y (classify_name): Remove call to
language_lookup_primitive_type. No longer necessary.
* gdbtypes.c (lookup_typename): Call lookup_symbol_in_language.
Remove call to language_lookup_primitive_type. No longer necessary.
* guile/scm-symbol.c (syscm_gdbarch_data_key): New static global.
(syscm_gdbarch_data): New struct.
(syscm_init_arch_symbols): New function.
(syscm_get_symbol_map): Renamed from syscm_objfile_symbol_map.
All callers updated. Handle symbols owned by arches.
(gdbscm_symbol_symtab): Handle symbols owned by arches.
(gdbscm_initialize_symbols): Initialize syscm_gdbarch_data_key.
* language.c (language_lookup_primitive_type_1): New function.
(language_lookup_primitive_type): Call it.
(language_alloc_type_symbol): New function.
(language_init_primitive_type_symbols): New function.
(language_lookup_primitive_type_as_symbol): New function.
* language.h (struct language_arch_info) <primitive_type_symbols>:
New member.
(language_lookup_primitive_type): Add function comment.
(language_lookup_primitive_type_as_symbol): Declare.
* printcmd.c (address_info): Handle arch-owned symbols.
* python/py-symbol.c (sympy_get_symtab): Ditto.
(set_symbol): Ditto.
(sympy_dealloc): Ditto.
* symmisc.c (print_symbol): Ditto.
* symtab.c (fixup_symbol_section): Ditto.
(lookup_symbol_aux): Initialize block_found.
(basic_lookup_symbol_nonlocal): Try looking up the symbol as a
primitive type.
(initialize_objfile_symbol_1): New function.
(initialize_objfile_symbol): Call it.
(allocate_symbol): Call it.
(allocate_template_symbol): Call it.
(symbol_objfile): Assert symbol is objfile-owned.
(symbol_arch, symbol_symtab, symbol_set_symtab): Ditto.
* symtab.h (struct symbol) <owner>: Replaces member "symtab".
(struct symbol) <is_objfile_owned>: New member.
(SYMBOL_OBJFILE_OWNED): New macro.
* cp-namespace.c (cp_lookup_bare_symbol): New arg langdef.
All callers updated. Try to find the symbol as a primitive type.
(lookup_namespace_scope): New arg langdef. All callers updated.
Call cp_lookup_bare_symbol directly for simple bare symbols.
Diffstat (limited to 'gdb/ChangeLog')
-rw-r--r-- | gdb/ChangeLog | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index acf692f..dc1cb15 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,57 @@ 2014-12-23 Doug Evans <xdje42@gmail.com> + * ada-lang.c (user_select_syms): Only fetch symtab if symbol is + objfile-owned. + (cache_symbol): Ignore symbols that are not objfile-owned. + * block.c (block_objfile): New function. + (block_gdbarch): New function. + * block.h (block_objfile): Declare. + (block_gdbarch): Declare. + * c-exp.y (classify_name): Remove call to + language_lookup_primitive_type. No longer necessary. + * gdbtypes.c (lookup_typename): Call lookup_symbol_in_language. + Remove call to language_lookup_primitive_type. No longer necessary. + * guile/scm-symbol.c (syscm_gdbarch_data_key): New static global. + (syscm_gdbarch_data): New struct. + (syscm_init_arch_symbols): New function. + (syscm_get_symbol_map): Renamed from syscm_objfile_symbol_map. + All callers updated. Handle symbols owned by arches. + (gdbscm_symbol_symtab): Handle symbols owned by arches. + (gdbscm_initialize_symbols): Initialize syscm_gdbarch_data_key. + * language.c (language_lookup_primitive_type_1): New function. + (language_lookup_primitive_type): Call it. + (language_alloc_type_symbol): New function. + (language_init_primitive_type_symbols): New function. + (language_lookup_primitive_type_as_symbol): New function. + * language.h (struct language_arch_info) <primitive_type_symbols>: + New member. + (language_lookup_primitive_type): Add function comment. + (language_lookup_primitive_type_as_symbol): Declare. + * printcmd.c (address_info): Handle arch-owned symbols. + * python/py-symbol.c (sympy_get_symtab): Ditto. + (set_symbol): Ditto. + (sympy_dealloc): Ditto. + * symmisc.c (print_symbol): Ditto. + * symtab.c (fixup_symbol_section): Ditto. + (lookup_symbol_aux): Initialize block_found. + (basic_lookup_symbol_nonlocal): Try looking up the symbol as a + primitive type. + (initialize_objfile_symbol_1): New function. + (initialize_objfile_symbol): Call it. + (allocate_symbol): Call it. + (allocate_template_symbol): Call it. + (symbol_objfile): Assert symbol is objfile-owned. + (symbol_arch, symbol_symtab, symbol_set_symtab): Ditto. + * symtab.h (struct symbol) <owner>: Replaces member "symtab". + (struct symbol) <is_objfile_owned>: New member. + (SYMBOL_OBJFILE_OWNED): New macro. + * cp-namespace.c (cp_lookup_bare_symbol): New arg langdef. + All callers updated. Try to find the symbol as a primitive type. + (lookup_namespace_scope): New arg langdef. All callers updated. + Call cp_lookup_bare_symbol directly for simple bare symbols. + +2014-12-23 Doug Evans <xdje42@gmail.com> + * symtab.h (SYMBOL_DOMAIN_BITS): New macro. (struct symbol) <domain>: Use it. |