aboutsummaryrefslogtreecommitdiff
path: root/gdb/ChangeLog
diff options
context:
space:
mode:
authorDoug Evans <xdje42@gmail.com>2014-12-23 07:55:39 -0800
committerDoug Evans <xdje42@gmail.com>2014-12-23 07:58:14 -0800
commit1994afbf19892c9e614a034fbf1a5233e9addce3 (patch)
treeaf1c6640f99921a6f636e860dc10914dc53cedea /gdb/ChangeLog
parent9d7b48dc6e8415e95f5228a6f66b414827eb0204 (diff)
downloadgdb-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/ChangeLog52
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.