aboutsummaryrefslogtreecommitdiff
path: root/gdb/printcmd.c
diff options
context:
space:
mode:
authorPeter Schauer <Peter.Schauer@mytum.de>1994-04-08 00:35:15 +0000
committerPeter Schauer <Peter.Schauer@mytum.de>1994-04-08 00:35:15 +0000
commit2fe3b329f69ca294a8ad3f1f655df7db33a6eb65 (patch)
treefefcb0319a012188394786b5afbb0854b089d229 /gdb/printcmd.c
parent44c1515dc7eee69194750e926b954e15b09d0dff (diff)
downloadgdb-2fe3b329f69ca294a8ad3f1f655df7db33a6eb65.zip
gdb-2fe3b329f69ca294a8ad3f1f655df7db33a6eb65.tar.gz
gdb-2fe3b329f69ca294a8ad3f1f655df7db33a6eb65.tar.bz2
* infrun.c (IN_SOLIB_TRAMPOLINE): Correct comment, trampolines
are in the .plt section. * minsyms.c (lookup_solib_trampoline_symbol_by_pc, find_solib_trampoline_target): New functions for handling stepping into -g compiled shared libraries. * symtab.h (lookup_solib_trampoline_symbol_by_pc, find_solib_trampoline_target): Add prototypes. * config/tm-sunos.h (IN_SOLIB_TRAMPOLINE, SKIP_TRAMPOLINE_CODE): Define to handle stepping into -g compiled shared libraries. * config/tm-sysv4.h (SKIP_TRAMPOLINE_CODE): Define to handle stepping into -g compiled shared libraries. * configure.in: Add mips-*-sysv4* support. * config/mips/mipsv4.mh, config/mips/mipsv4.mt, config/mips/tm-mipsv4.h, config/mips/xm-mipsv4.h, mipsv4-nat.c: New files for MIPS SVR4 support. * Makefile.in: Update for new mipsv4 files. * alpha-tdep.c (heuristic_proc_desc, find_proc_desc): Use read_next_frame_reg to obtain the frame relative stack pointer. * mips-tdep.c (heuristic_proc_desc): Use read_next_frame_reg to obtain the frame relative stack pointer. * mdebugread.c (parse_partial_symbols, psymtab_to_symtab1): Handle stStatic and stStaticProc symbols in stabs-in-ecoff output by entering them into the minimal symbol table. * printcmd.c (print_scalar_formatted): Do not try to unpack to a long for float formats. * solib.c: Include "elf/mips.h" only if DT_MIPS_RLD_MAP does not get defined in <link.h>. * solib.c (solib_add): Add shared library sections to the section table of the target before adding the symbols. * partial-stab.h: Relocate static and global functions. * dbxread.c (read_dbx_symtab): Remove unused variable end_of_text_address. Relocate text_addr when passing it to end_psymtab. For Alpha OSF/1 targets, enable gdb to set breakpoints in shared library functions before the executable is run. Retrieve dynamic symbols from stripped executables. * mipsread.c (read_alphacoff_dynamic_symtab): New function. * mipsread.c (mipscoff_symfile_read): Use it. Issue warning message if no debugging symbols were found. * alpha-tdep.c (alpha_skip_prologue): Silently return the unaltered pc if memory at the pc is not accessible and GDB_TARGET_HAS_SHARED_LIBS is defined. * config/alpha/nm-alpha.h (GDB_TARGET_HAS_SHARED_LIBS): Define, OSF/1 has shared libraries.
Diffstat (limited to 'gdb/printcmd.c')
-rw-r--r--gdb/printcmd.c33
1 files changed, 11 insertions, 22 deletions
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index a9fa164..10ae4d8 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -74,11 +74,6 @@ static unsigned int max_symbolic_offset = UINT_MAX;
printing a symbolic value as `<symbol at filename:linenum>' if set. */
static int print_symbol_filename = 0;
-/* Switch for quick display of symbolic addresses -- only uses minsyms,
- not full search of symtabs. */
-
-int fast_symbolic_addr = 1;
-
/* Number of auto-display expression currently being displayed.
So that we can disable it if we get an error or a signal within it.
-1 when not doing one. */
@@ -374,7 +369,8 @@ print_scalar_formatted (valaddr, type, format, size, stream)
return;
}
- val_long = unpack_long (type, valaddr);
+ if (format != 'f')
+ val_long = unpack_long (type, valaddr);
/* If we are printing it as unsigned, truncate it in case it is actually
a negative signed value (e.g. "print/u (short)-1" should print 65535
@@ -533,15 +529,15 @@ print_address_symbolic (addr, stream, do_demangle, leadin)
/* First try to find the address in the symbol table, then
in the minsyms. Take the closest one. */
- if (fast_symbolic_addr)
- {
- /* This is defective in the sense that it only finds text symbols. */
- symbol = find_pc_function (addr);
- if (symbol)
- name_location = BLOCK_START (SYMBOL_BLOCK_VALUE (symbol));
- }
- else
- find_addr_symbol (addr, &symtab, &name_location);
+ /* This is defective in the sense that it only finds text symbols. So
+ really this is kind of pointless--we should make sure that the
+ minimal symbols have everything we need (by changing that we could
+ save some memory, but for many debug format--ELF/DWARF or
+ anything/stabs--it would be inconvenient to eliminate those minimal
+ symbols anyway). */
+ symbol = find_pc_function (addr);
+ if (symbol)
+ name_location = BLOCK_START (SYMBOL_BLOCK_VALUE (symbol));
if (symbol)
{
@@ -2183,13 +2179,6 @@ environment, the value is printed in its own window.");
&setprintlist),
&showprintlist);
- add_show_from_set (
- add_set_cmd ("fast-symbolic-addr", no_class, var_boolean,
- (char *)&fast_symbolic_addr,
- "Set fast printing of symbolic addresses (using minimal symbols).",
- &setprintlist),
- &showprintlist);
-
examine_b_type = init_type (TYPE_CODE_INT, 1, 0, NULL, NULL);
examine_h_type = init_type (TYPE_CODE_INT, 2, 0, NULL, NULL);
examine_w_type = init_type (TYPE_CODE_INT, 4, 0, NULL, NULL);