diff options
author | Tom Tromey <tromey@redhat.com> | 2013-08-15 08:43:43 -0600 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2014-02-26 12:11:16 -0700 |
commit | efd66ac6698323d9523a4dce352008c4c835812e (patch) | |
tree | f886696f3562ab3ba9542f82dcced106c740e642 /gdb/solib-som.c | |
parent | 50e65b1713256487d50514b50b38b3fd1080b93e (diff) | |
download | gdb-efd66ac6698323d9523a4dce352008c4c835812e.zip gdb-efd66ac6698323d9523a4dce352008c4c835812e.tar.gz gdb-efd66ac6698323d9523a4dce352008c4c835812e.tar.bz2 |
change minsym representation
In a later patch we're going to change the minimal symbol address
calculation to apply section offsets at the point of use. To make it
simpler to catch potential problem spots, this patch changes the
representation of minimal symbols and introduces new
minimal-symbol-specific variants of the various accessors. This is
necessary because it would be excessively ambitious to try to convert
all the symbol types at once.
The core of this change is just renaming a field in minimal_symbol;
the rest is just a fairly mechanical rewording.
2014-02-26 Tom Tromey <tromey@redhat.com>
* symtab.h (struct minimal_symbol) <mginfo>: Rename from ginfo.
(MSYMBOL_VALUE, MSYMBOL_VALUE_ADDRESS, MSYMBOL_VALUE_BYTES)
(MSYMBOL_BLOCK_VALUE, MSYMBOL_VALUE_CHAIN, MSYMBOL_LANGUAGE)
(MSYMBOL_SECTION, MSYMBOL_OBJ_SECTION, MSYMBOL_NATURAL_NAME)
(MSYMBOL_LINKAGE_NAME, MSYMBOL_PRINT_NAME, MSYMBOL_DEMANGLED_NAME)
(MSYMBOL_SET_LANGUAGE, MSYMBOL_SEARCH_NAME)
(MSYMBOL_MATCHES_SEARCH_NAME, MSYMBOL_SET_NAMES): New macros.
* ada-lang.c (ada_main_name): Update.
(ada_lookup_simple_minsym): Update.
(ada_make_symbol_completion_list): Update.
(ada_add_standard_exceptions): Update.
* ada-tasks.c (read_atcb, ada_tasks_inferior_data_sniffer): Update.
* aix-thread.c (pdc_symbol_addrs, pd_enable): Update.
* amd64-windows-tdep.c (amd64_skip_main_prologue): Update.
* arm-tdep.c (skip_prologue_function): Update.
(arm_skip_stack_protector, arm_skip_stub): Update.
* arm-wince-tdep.c (arm_pe_skip_trampoline_code): Update.
(arm_wince_skip_main_prologue): Update.
* auxv.c (ld_so_xfer_auxv): Update.
* avr-tdep.c (avr_scan_prologue): Update.
* ax-gdb.c (gen_var_ref): Update.
* block.c (call_site_for_pc): Update.
* blockframe.c (get_pc_function_start): Update.
(find_pc_partial_function_gnu_ifunc): Update.
* breakpoint.c (create_overlay_event_breakpoint): Update.
(create_longjmp_master_breakpoint): Update.
(create_std_terminate_master_breakpoint): Update.
(create_exception_master_breakpoint): Update.
(resolve_sal_pc): Update.
* bsd-uthread.c (bsd_uthread_lookup_address): Update.
* btrace.c (ftrace_print_function_name, ftrace_function_switched):
Update.
* c-valprint.c (c_val_print): Update.
* coff-pe-read.c (add_pe_forwarded_sym): Update.
* coffread.c (coff_symfile_read): Update.
* common/agent.c (agent_look_up_symbols): Update.
* dbxread.c (find_stab_function_addr): Update.
(end_psymtab): Update.
* dwarf2loc.c (call_site_to_target_addr): Update.
(func_verify_no_selftailcall): Update.
(tailcall_dump): Update.
(call_site_find_chain_1): Update.
(dwarf_expr_reg_to_entry_parameter): Update.
* elfread.c (elf_gnu_ifunc_record_cache): Update.
(elf_gnu_ifunc_resolve_by_got): Update.
* f-valprint.c (info_common_command): Update.
* findvar.c (read_var_value): Update.
* frame.c (get_prev_frame_1): Update.
(inside_main_func): Update.
* frv-tdep.c (frv_skip_main_prologue): Update.
(frv_frame_this_id): Update.
* glibc-tdep.c (glibc_skip_solib_resolver): Update.
* gnu-v2-abi.c (gnuv2_value_rtti_type): Update.
* gnu-v3-abi.c (gnuv3_rtti_type): Update.
(gnuv3_skip_trampoline): Update.
* hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline): Update.
(hppa64_hpux_in_solib_call_trampoline): Update.
(hppa_hpux_skip_trampoline_code): Update.
(hppa64_hpux_search_dummy_call_sequence): Update.
(hppa_hpux_find_import_stub_for_addr): Update.
(hppa_hpux_find_dummy_bpaddr): Update.
* hppa-tdep.c (hppa_symbol_address)
(hppa_lookup_stub_minimal_symbol): Update.
* i386-tdep.c (i386_skip_main_prologue): Update.
(i386_pe_skip_trampoline_code): Update.
* ia64-tdep.c (ia64_convert_from_func_ptr_addr): Update.
* infcall.c (get_function_name): Update.
* infcmd.c (until_next_command): Update.
* jit.c (jit_breakpoint_re_set_internal): Update.
(jit_inferior_init): Update.
* linespec.c (minsym_found): Update.
(add_minsym): Update.
* linux-fork.c (info_checkpoints_command): Update.
* linux-nat.c (get_signo): Update.
* linux-thread-db.c (inferior_has_bug): Update.
* m32c-tdep.c (m32c_return_value): Update.
(m32c_m16c_address_to_pointer): Update.
(m32c_m16c_pointer_to_address): Update.
* m32r-tdep.c (m32r_frame_this_id): Update.
* m68hc11-tdep.c (m68hc11_get_register_info): Update.
* machoread.c (macho_resolve_oso_sym_with_minsym): Update.
* maint.c (maintenance_translate_address): Update.
* minsyms.c (add_minsym_to_hash_table): Update.
(add_minsym_to_demangled_hash_table): Update.
(msymbol_objfile): Update.
(lookup_minimal_symbol): Update.
(iterate_over_minimal_symbols): Update.
(lookup_minimal_symbol_text): Update.
(lookup_minimal_symbol_by_pc_name): Update.
(lookup_minimal_symbol_solib_trampoline): Update.
(lookup_minimal_symbol_by_pc_section_1): Update.
(lookup_minimal_symbol_and_objfile): Update.
(prim_record_minimal_symbol_full): Update.
(compare_minimal_symbols): Update.
(compact_minimal_symbols): Update.
(build_minimal_symbol_hash_tables): Update.
(install_minimal_symbols): Update.
(terminate_minimal_symbol_table): Update.
(find_solib_trampoline_target): Update.
(minimal_symbol_upper_bound): Update.
* mips-linux-tdep.c (mips_linux_skip_resolver): Update.
* mips-tdep.c (mips_stub_frame_sniffer): Update.
(mips_skip_pic_trampoline_code): Update.
* msp430-tdep.c (msp430_skip_trampoline_code): Update.
* objc-lang.c (selectors_info): Update.
(classes_info): Update.
(find_methods): Update.
(find_imps): Update.
(find_objc_msgsend): Update.
* objfiles.c (objfile_relocate1): Update.
* objfiles.h (ALL_OBJFILE_MSYMBOLS): Update.
* obsd-tdep.c (obsd_skip_solib_resolver): Update.
* p-valprint.c (pascal_val_print): Update.
* parse.c (write_exp_msymbol): Update.
* ppc-linux-tdep.c (powerpc_linux_in_dynsym_resolve_code)
(ppc_linux_spe_context_lookup, ppc_elfv2_skip_entrypoint): Update.
* ppc-sysv-tdep.c (convert_code_addr_to_desc_addr): Update.
* printcmd.c (build_address_symbolic): Update.
(sym_info): Update.
(address_info): Update.
* proc-service.c (ps_pglobal_lookup): Update.
* psymtab.c (find_pc_sect_psymtab_closer): Update.
(find_pc_sect_psymtab): Update.
* python/py-framefilter.c (py_print_frame): Update.
* ravenscar-thread.c (get_running_thread_id): Update.
* record-btrace.c (btrace_call_history, btrace_get_bfun_name):
Update.
* remote.c (remote_check_symbols): Update.
* rs6000-tdep.c (rs6000_skip_main_prologue): Update.
(rs6000_skip_trampoline_code): Update.
* sh64-tdep.c (sh64_elf_make_msymbol_special): Update.
* sol2-tdep.c (sol2_skip_solib_resolver): Update.
* solib-dsbt.c (lm_base): Update.
* solib-frv.c (lm_base): Update.
(main_got): Update.
* solib-irix.c (locate_base): Update.
* solib-som.c (som_solib_create_inferior_hook): Update.
(som_solib_desire_dynamic_linker_symbols): Update.
(link_map_start): Update.
* solib-spu.c (spu_enable_break): Update.
(ocl_enable_break): Update.
* solib-svr4.c (elf_locate_base): Update.
(enable_break): Update.
* spu-tdep.c (spu_get_overlay_table): Update.
(spu_catch_start): Update.
(flush_ea_cache): Update.
* stabsread.c (define_symbol): Update.
(scan_file_globals): Update.
* stack.c (find_frame_funname): Update.
(frame_info): Update.
* symfile.c (simple_read_overlay_table): Update.
(simple_overlay_update): Update.
* symmisc.c (dump_msymbols): Update.
* symtab.c (fixup_section): Update.
(find_pc_sect_line): Update.
(skip_prologue_sal): Update.
(search_symbols): Update.
(print_msymbol_info): Update.
(rbreak_command): Update.
(MCOMPLETION_LIST_ADD_SYMBOL): New macro.
(completion_list_objc_symbol): Update.
(default_make_symbol_completion_list_break_on): Update.
* tracepoint.c (scope_info): Update.
* tui/tui-disasm.c (tui_find_disassembly_address): Update.
(tui_get_begin_asm_address): Update.
* valops.c (find_function_in_inferior): Update.
* value.c (value_static_field): Update.
(value_fn_field): Update.
Diffstat (limited to 'gdb/solib-som.c')
-rw-r--r-- | gdb/solib-som.c | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/gdb/solib-som.c b/gdb/solib-som.c index 7a43cf8..dd2d8f7 100644 --- a/gdb/solib-som.c +++ b/gdb/solib-som.c @@ -219,7 +219,7 @@ som_solib_create_inferior_hook (int from_tty) if (msymbol == NULL) goto keep_going; - anaddr = SYMBOL_VALUE_ADDRESS (msymbol); + anaddr = MSYMBOL_VALUE_ADDRESS (msymbol); store_unsigned_integer (buf, 4, byte_order, ptid_get_pid (inferior_ptid)); status = target_write_memory (anaddr, buf, 4); if (status != 0) @@ -251,16 +251,16 @@ Suggest linking with /opt/langtools/lib/end.o.\n\ GDB will be unable to track shl_load/shl_unload calls")); goto keep_going; } - anaddr = SYMBOL_VALUE_ADDRESS (msymbol); + anaddr = MSYMBOL_VALUE_ADDRESS (msymbol); dld_cache.hook.address = anaddr; /* Grrr, this might not be an export symbol! We have to find the export stub. */ - msymbol = hppa_lookup_stub_minimal_symbol (SYMBOL_LINKAGE_NAME (msymbol), + msymbol = hppa_lookup_stub_minimal_symbol (MSYMBOL_LINKAGE_NAME (msymbol), EXPORT); if (msymbol != NULL) { - anaddr = SYMBOL_VALUE (msymbol); + anaddr = MSYMBOL_VALUE (msymbol); dld_cache.hook_stub.address = anaddr; } store_unsigned_integer (buf, 4, byte_order, anaddr); @@ -274,7 +274,7 @@ Suggest linking with /opt/langtools/lib/end.o.\n\ GDB will be unable to track shl_load/shl_unload calls")); goto keep_going; } - anaddr = SYMBOL_VALUE_ADDRESS (msymbol); + anaddr = MSYMBOL_VALUE_ADDRESS (msymbol); status = target_write_memory (anaddr, buf, 4); /* Now set a shlib_event breakpoint at __d_trap so we can track @@ -289,7 +289,7 @@ GDB will be unable to track shl_load/shl_unload calls")); goto keep_going; } create_solib_event_breakpoint (target_gdbarch (), - SYMBOL_VALUE_ADDRESS (msymbol)); + MSYMBOL_VALUE_ADDRESS (msymbol)); /* We have all the support usually found in end.o, so we can track shl_load and shl_unload calls. */ @@ -305,7 +305,7 @@ keep_going: error (_("Unable to find __dld_flags symbol in object file.")); } - anaddr = SYMBOL_VALUE_ADDRESS (msymbol); + anaddr = MSYMBOL_VALUE_ADDRESS (msymbol); /* Read the current contents. */ status = target_read_memory (anaddr, buf, 4); @@ -350,7 +350,7 @@ manpage for methods to privately map shared library text.")); if (msymbol == NULL) error (_("Unable to find _start symbol in object file.")); - anaddr = SYMBOL_VALUE_ADDRESS (msymbol); + anaddr = MSYMBOL_VALUE_ADDRESS (msymbol); /* Make the breakpoint at "_start" a shared library event breakpoint. */ create_solib_event_breakpoint (target_gdbarch (), anaddr); @@ -384,7 +384,7 @@ som_solib_desire_dynamic_linker_symbols (void) dld_msymbol = lookup_minimal_symbol ("shl_load", NULL, objfile); if (dld_msymbol != NULL) { - dld_cache.load.address = SYMBOL_VALUE (dld_msymbol); + dld_cache.load.address = MSYMBOL_VALUE (dld_msymbol); dld_cache.load.unwind = find_unwind_entry (dld_cache.load.address); } @@ -394,10 +394,10 @@ som_solib_desire_dynamic_linker_symbols (void) { if (MSYMBOL_TYPE (dld_msymbol) == mst_solib_trampoline) { - u = find_unwind_entry (SYMBOL_VALUE (dld_msymbol)); + u = find_unwind_entry (MSYMBOL_VALUE (dld_msymbol)); if ((u != NULL) && (u->stub_unwind.stub_type == EXPORT)) { - dld_cache.load_stub.address = SYMBOL_VALUE (dld_msymbol); + dld_cache.load_stub.address = MSYMBOL_VALUE (dld_msymbol); dld_cache.load_stub.unwind = u; } } @@ -406,7 +406,7 @@ som_solib_desire_dynamic_linker_symbols (void) dld_msymbol = lookup_minimal_symbol ("shl_unload", NULL, objfile); if (dld_msymbol != NULL) { - dld_cache.unload.address = SYMBOL_VALUE (dld_msymbol); + dld_cache.unload.address = MSYMBOL_VALUE (dld_msymbol); dld_cache.unload.unwind = find_unwind_entry (dld_cache.unload.address); /* ??rehrauer: I'm not sure exactly what this is, but it appears @@ -433,10 +433,10 @@ som_solib_desire_dynamic_linker_symbols (void) { if (MSYMBOL_TYPE (dld_msymbol) == mst_solib_trampoline) { - u = find_unwind_entry (SYMBOL_VALUE (dld_msymbol)); + u = find_unwind_entry (MSYMBOL_VALUE (dld_msymbol)); if ((u != NULL) && (u->stub_unwind.stub_type == EXPORT)) { - dld_cache.unload_stub.address = SYMBOL_VALUE (dld_msymbol); + dld_cache.unload_stub.address = MSYMBOL_VALUE (dld_msymbol); dld_cache.unload_stub.unwind = u; } } @@ -534,7 +534,7 @@ link_map_start (void) sym = lookup_minimal_symbol ("__dld_flags", NULL, NULL); if (!sym) error (_("Unable to find __dld_flags symbol in object file.")); - addr = SYMBOL_VALUE_ADDRESS (sym); + addr = MSYMBOL_VALUE_ADDRESS (sym); read_memory (addr, buf, 4); dld_flags = extract_unsigned_integer (buf, 4, byte_order); if ((dld_flags & DLD_FLAGS_LISTVALID) == 0) @@ -551,10 +551,10 @@ link_map_start (void) error (_("Unable to find dynamic library list.")); return 0; } - addr = SYMBOL_VALUE_ADDRESS (sym) - 8; + addr = MSYMBOL_VALUE_ADDRESS (sym) - 8; } else - addr = SYMBOL_VALUE_ADDRESS (sym); + addr = MSYMBOL_VALUE_ADDRESS (sym); read_memory (addr, buf, 4); addr = extract_unsigned_integer (buf, 4, byte_order); |