mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-08-06 06:45:56 +08:00
* 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.
This commit is contained in:
10
gdb/parse.c
10
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);
|
||||
|
Reference in New Issue
Block a user