From 46bf50512ce837bbc53e8704dd5117db3273099b Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Mon, 29 Jun 2009 13:18:37 +0000 Subject: * gdbtypes.h (struct builtin_type): Remove builtin_core_addr, nodebug_text_symbol, nodebug_data_symbol, nodebug_unknown_symbol, and nodebug_tls_symbol members. (struct objfile_type): New data structure. (objfile_type): Add prototype. * gdbtypes.c (gdbtypes_post_init): Remove initialization code for types no longer in struct builtin_type. (objfile_type_data): New static variable. (_initialize_gdbtypes): Initialize it. (objfile_type): New function. * gdbtypes.h (builtin_type_error): Remove. * gdbtypes.c (build_complex): Do not use builtin_type_error. * symtab.c (builtin_type_error): Remove. (_initialize_symtab): Remove initialization. * stabsread.c (dbx_lookup_type, define_symbol, error_type, rs6000_builtin_type, read_range_type): Use per-objfile types instead of global or per-architecture builtin types. * coffread.c (decode_type): Likewise. * dwarf2read.c (read_array_type, read_tag_string_type, new_symbol, die_type): Likewise. * mdebugread.c (parse_symbol, basic_type, upgrade_type, parse_procedure, psymtab_to_symtab_1): Likewise. * xcoffread.c (process_xcoff_symbol): Likewise. * parse.c (write_exp_msymbol): Likewise. * stabsread.c (rs6000_builtin_type_data): New static variable. (_initialize_stabsread): Initialize it. (rs6000_builtin_type): Add OBJFILE argument. Allocate builtin types per-objfile instead of globally. * stabsread.c (dbx_lookup_type): Add OBJFILE argument. Use it instead of current_objfile; pass it to rs6000_builtin_type. (dbx_alloc_type, read_type, read_range_type): Update calls. (cleanup_undefined_types_noname): Add OBJFILE argument and pass it to dbx_lookup_type. (cleanup_undefined_types): Add OBJFILE argument and pass it to cleanup_undefined_types_noname. * stabsread.h (cleanup_undefined_types): Add OBJFILE argument. * buildsym.c (end_symtab): Update call. --- gdb/parse.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gdb/parse.c') diff --git a/gdb/parse.c b/gdb/parse.c index 5de3bc72023..de4cd6cec77 100644 --- a/gdb/parse.c +++ b/gdb/parse.c @@ -489,7 +489,7 @@ write_exp_msymbol (struct minimal_symbol *msymbol) write_exp_elt_opcode (OP_LONG); /* Let's make the type big enough to hold a 64-bit address. */ - write_exp_elt_type (builtin_type (gdbarch)->builtin_core_addr); + write_exp_elt_type (objfile_type (objfile)->builtin_core_addr); write_exp_elt_longcst ((LONGEST) addr); write_exp_elt_opcode (OP_LONG); @@ -497,7 +497,7 @@ write_exp_msymbol (struct minimal_symbol *msymbol) { write_exp_elt_opcode (UNOP_MEMVAL_TLS); write_exp_elt_objfile (objfile); - write_exp_elt_type (builtin_type (gdbarch)->nodebug_tls_symbol); + write_exp_elt_type (objfile_type (objfile)->nodebug_tls_symbol); write_exp_elt_opcode (UNOP_MEMVAL_TLS); return; } @@ -508,18 +508,18 @@ write_exp_msymbol (struct minimal_symbol *msymbol) case mst_text: case mst_file_text: case mst_solib_trampoline: - write_exp_elt_type (builtin_type (gdbarch)->nodebug_text_symbol); + write_exp_elt_type (objfile_type (objfile)->nodebug_text_symbol); break; case mst_data: case mst_file_data: case mst_bss: case mst_file_bss: - write_exp_elt_type (builtin_type (gdbarch)->nodebug_data_symbol); + write_exp_elt_type (objfile_type (objfile)->nodebug_data_symbol); break; default: - write_exp_elt_type (builtin_type (gdbarch)->nodebug_unknown_symbol); + write_exp_elt_type (objfile_type (objfile)->nodebug_unknown_symbol); break; } write_exp_elt_opcode (UNOP_MEMVAL); -- cgit v1.2.1