This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch]: Get rid of deprecated_print_address_numeric
- From: Markus Deuling <deuling at de dot ibm dot com>
- To: Ulrich Weigand <uweigand at de dot ibm dot com>
- Cc: GDB Patches <gdb-patches at sourceware dot org>
- Date: Wed, 21 May 2008 08:12:15 +0200
- Subject: Re: [patch]: Get rid of deprecated_print_address_numeric
- References: <200805201521.m4KFL31Y007381@d12av02.megacenter.de.ibm.com>
Hi Uli,
Ulrich Weigand schrieb:
Hmm, I guess one of the benefits of paddress is that you no longer
need to break out a single (logical) message into multiple pieces.
Something like
printf_filtered (("%s:%d:%d:%s:%s\n"), filename, line, character,
mid ? "middle" : "beg", paddress (pc));
instead of the lines above would be better.
(Even if that doesn't really matter in this particular case, in
general it is also better to use complete phrases as strings for
translation.)
Would you mind changing the patch accordingly?
thanks. I reworked that patch now and also integrated the other occurences of paddress
where suitable. Re-tested on x86_64 without regression.
Is this Ok ?
Regards,
Markus
--
Markus Deuling
GNU Toolchain for Linux on Cell BE
deuling@de.ibm.com
diff -urpN src/gdb/annotate.c dev/gdb/annotate.c
--- src/gdb/annotate.c 2008-05-21 06:30:20.000000000 +0200
+++ dev/gdb/annotate.c 2008-05-21 07:14:45.000000000 +0200
@@ -427,22 +427,15 @@ annotate_source (char *filename, int lin
else
printf_filtered (("\032\032"));
- printf_filtered (("%s:%d:%d:%s:0x"), filename,
- line, character,
- mid ? "middle" : "beg");
- deprecated_print_address_numeric (pc, 0, gdb_stdout);
- printf_filtered (("\n"));
+ printf_filtered (("%s:%d:%d:%s:%s\n"), filename, line, character,
+ mid ? "middle" : "beg", paddress (pc));
}
void
annotate_frame_begin (int level, CORE_ADDR pc)
{
if (annotation_level > 1)
- {
- printf_filtered (("\n\032\032frame-begin %d 0x"), level);
- deprecated_print_address_numeric (pc, 0, gdb_stdout);
- printf_filtered (("\n"));
- }
+ printf_filtered (("\n\032\032frame-begin %d %s\n"), level, paddress (pc));
}
void
diff -urpN src/gdb/cli/cli-cmds.c dev/gdb/cli/cli-cmds.c
--- src/gdb/cli/cli-cmds.c 2008-05-09 11:34:58.000000000 +0200
+++ dev/gdb/cli/cli-cmds.c 2008-05-21 07:19:08.000000000 +0200
@@ -668,18 +668,12 @@ edit_command (char *arg, int from_tty)
hex_string ((unsigned long) sal.pc));
sym = find_pc_function (sal.pc);
if (sym)
- {
- deprecated_print_address_numeric (sal.pc, 1, gdb_stdout);
- printf_filtered (" is in ");
- fputs_filtered (SYMBOL_PRINT_NAME (sym), gdb_stdout);
- printf_filtered (" (%s:%d).\n", sal.symtab->filename, sal.line);
- }
+ printf_filtered ("%s is in %s (%s:%d).\n", paddress (sal.pc),
+ SYMBOL_PRINT_NAME (sym), sal.symtab->filename,
+ sal.line);
else
- {
- deprecated_print_address_numeric (sal.pc, 1, gdb_stdout);
- printf_filtered (" is at %s:%d.\n",
- sal.symtab->filename, sal.line);
- }
+ printf_filtered ("%s is at %s:%d.\n", paddress (sal.pc),
+ sal.symtab->filename, sal.line);
}
/* If what was given does not imply a symtab, it must be an undebuggable
@@ -838,18 +832,12 @@ list_command (char *arg, int from_tty)
hex_string ((unsigned long) sal.pc));
sym = find_pc_function (sal.pc);
if (sym)
- {
- deprecated_print_address_numeric (sal.pc, 1, gdb_stdout);
- printf_filtered (" is in ");
- fputs_filtered (SYMBOL_PRINT_NAME (sym), gdb_stdout);
- printf_filtered (" (%s:%d).\n", sal.symtab->filename, sal.line);
- }
+ printf_filtered ("%s is in %s (%s:%d).\n",
+ paddress (sal.pc), SYMBOL_PRINT_NAME (sym),
+ sal.symtab->filename, sal.line);
else
- {
- deprecated_print_address_numeric (sal.pc, 1, gdb_stdout);
- printf_filtered (" is at %s:%d.\n",
- sal.symtab->filename, sal.line);
- }
+ printf_filtered ("%s is at %s:%d.\n", paddress (sal.pc),
+ sal.symtab->filename, sal.line);
}
/* If line was not specified by just a line number,
diff -urpN src/gdb/defs.h dev/gdb/defs.h
--- src/gdb/defs.h 2008-05-05 05:50:36.000000000 +0200
+++ dev/gdb/defs.h 2008-05-21 07:03:42.000000000 +0200
@@ -479,7 +479,7 @@ extern char *paddr_nz (CORE_ADDR addr);
extern char *paddr_u (CORE_ADDR addr);
extern char *paddr_d (LONGEST addr);
-/* Like 0x%lx, replaces deprecated_print_address_numeric. */
+/* Like 0x%lx. */
extern const char *paddress (CORE_ADDR addr);
extern char *phex (ULONGEST l, int sizeof_l);
@@ -565,8 +565,6 @@ extern int build_address_symbolic (CORE_
int *line,
int *unmapped);
-extern void deprecated_print_address_numeric (CORE_ADDR, int, struct ui_file *);
-
extern void print_address (CORE_ADDR, struct ui_file *);
/* From source.c */
diff -urpN src/gdb/maint.c dev/gdb/maint.c
--- src/gdb/maint.c 2008-01-01 23:53:12.000000000 +0100
+++ dev/gdb/maint.c 2008-05-21 07:03:42.000000000 +0200
@@ -306,8 +306,7 @@ maint_print_section_info (const char *na
CORE_ADDR addr, CORE_ADDR endaddr,
unsigned long filepos)
{
- /* FIXME-32x64: Need deprecated_print_address_numeric with field
- width. */
+ /* FIXME-32x64: Need paddress with field width. */
printf_filtered (" 0x%s", paddr (addr));
printf_filtered ("->0x%s", paddr (endaddr));
printf_filtered (" at %s",
diff -urpN src/gdb/printcmd.c dev/gdb/printcmd.c
--- src/gdb/printcmd.c 2008-05-21 06:30:21.000000000 +0200
+++ dev/gdb/printcmd.c 2008-05-21 07:03:42.000000000 +0200
@@ -675,23 +675,6 @@ build_address_symbolic (CORE_ADDR addr,
return 0;
}
-/* Print address ADDR on STREAM. USE_LOCAL means the same thing as for
- print_longest. */
-void
-deprecated_print_address_numeric (CORE_ADDR addr, int use_local,
- struct ui_file *stream)
-{
- if (use_local)
- fputs_filtered (paddress (addr), stream);
- else
- {
- int addr_bit = gdbarch_addr_bit (current_gdbarch);
-
- if (addr_bit < (sizeof (CORE_ADDR) * HOST_CHAR_BIT))
- addr &= ((CORE_ADDR) 1 << addr_bit) - 1;
- print_longest (stream, 'x', 0, (ULONGEST) addr);
- }
-}
/* Print address ADDR symbolically on STREAM.
First print it as a number. Then perhaps print
diff -urpN src/gdb/tui/tui-stack.c dev/gdb/tui/tui-stack.c
--- src/gdb/tui/tui-stack.c 2008-01-01 23:53:22.000000000 +0100
+++ dev/gdb/tui/tui-stack.c 2008-05-21 07:03:42.000000000 +0200
@@ -102,7 +102,7 @@ tui_make_status_line (struct tui_locator
/* Translate PC address. */
pc_out = tui_sfileopen (128);
- deprecated_print_address_numeric (loc->addr, 1, pc_out);
+ fputs_filtered (paddress (loc->addr), pc_out);
pc_buf = tui_file_get_strbuf (pc_out);
pc_width = strlen (pc_buf);