diff options
author | Catalin Udma <catalin.udma@freescale.com> | 2014-12-15 16:41:29 +0200 |
---|---|---|
committer | Catalin Udma <catalin.udma@freescale.com> | 2014-12-15 16:41:29 +0200 |
commit | aacd3e8c4f5ac00f1ee41c082c2f10eb7457d04c (patch) | |
tree | ac150f3b9889ff9e48e27b427f676bb1c6999d47 /gdb | |
parent | 184d64776bc16fcba7b00e5784e27f52854cc8dd (diff) | |
download | gdb-aacd3e8c4f5ac00f1ee41c082c2f10eb7457d04c.zip gdb-aacd3e8c4f5ac00f1ee41c082c2f10eb7457d04c.tar.gz gdb-aacd3e8c4f5ac00f1ee41c082c2f10eb7457d04c.tar.bz2 |
Fix info mem command for 32 bits host/64 bits target
When running gdb on 32 bits host for 64 bits target, info mem command
truncates the target address to 32 bits, like in the example below
(gdb) set architecture powerpc:common64
(gdb) mem 0x100000000 0x200000000 rw
(gdb) info mem
1 y 0x0000000000000000 0x0000000000000000 rw nocache
gdb/ChangeLog:
PR gdb/15684
* memattr.c (mem_info_command): Remove "unsigned long" casts.
Signed-off-by: Catalin Udma <catalin.udma@freescale.com>
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/memattr.c | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f3a358e..b897516 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2014-12-15 Catalin Udma <catalin.udma@freescale.com> + + PR gdb/15684 + * memattr.c (mem_info_command): Remove "unsigned long" casts. + 2014-12-13 Doug Evans <xdje42@gmail.com> * utils.c (make_hex_string): Fix off-by-one error. diff --git a/gdb/memattr.c b/gdb/memattr.c index 25e4554..9d2a2d4 100644 --- a/gdb/memattr.c +++ b/gdb/memattr.c @@ -447,9 +447,9 @@ mem_info_command (char *args, int from_tty) m->number, m->enabled_p ? 'y' : 'n'); if (gdbarch_addr_bit (target_gdbarch ()) <= 32) - tmp = hex_string_custom ((unsigned long) m->lo, 8); + tmp = hex_string_custom (m->lo, 8); else - tmp = hex_string_custom ((unsigned long) m->lo, 16); + tmp = hex_string_custom (m->lo, 16); printf_filtered ("%s ", tmp); @@ -458,14 +458,14 @@ mem_info_command (char *args, int from_tty) if (m->hi == 0) tmp = "0x100000000"; else - tmp = hex_string_custom ((unsigned long) m->hi, 8); + tmp = hex_string_custom (m->hi, 8); } else { if (m->hi == 0) tmp = "0x10000000000000000"; else - tmp = hex_string_custom ((unsigned long) m->hi, 16); + tmp = hex_string_custom (m->hi, 16); } printf_filtered ("%s ", tmp); |