summaryrefslogtreecommitdiff
path: root/gdb/record.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2012-07-20 11:22:31 +0000
committerPedro Alves <palves@redhat.com>2012-07-20 11:22:31 +0000
commit2a3986d5229b62f4f5adfcc44286704324d8dbad (patch)
treecdc635f67f084f34df498dffda33509df4a4f97a /gdb/record.c
parent507c8f61614dbdd7d859178d57b59d36e37fce16 (diff)
downloadgdb-2a3986d5229b62f4f5adfcc44286704324d8dbad.tar.gz
2012-07-20 Pedro Alves <palves@redhat.com>
* i386-tdep.c (i386_record_modrm, i386_record_lea_modrm_addr) (i386_process_record): Use record_read_memory. * record.c (record_read_memory): New function. (record_arch_list_add_mem, record_exec_insn): Use record_read_memory. * record.h (record_read_memory): Declare.
Diffstat (limited to 'gdb/record.c')
-rw-r--r--gdb/record.c33
1 files changed, 18 insertions, 15 deletions
diff --git a/gdb/record.c b/gdb/record.c
index e1a612102aa..ac55cdf8a0d 100644
--- a/gdb/record.c
+++ b/gdb/record.c
@@ -485,6 +485,20 @@ record_arch_list_add_reg (struct regcache *regcache, int regnum)
return 0;
}
+int
+record_read_memory (struct gdbarch *gdbarch,
+ CORE_ADDR memaddr, gdb_byte *myaddr,
+ ssize_t len)
+{
+ int ret = target_read_memory (memaddr, myaddr, len);
+
+ if (ret && record_debug)
+ printf_unfiltered (_("Process record: error reading memory "
+ "at addr %s len = %ld.\n"),
+ paddress (gdbarch, memaddr), (long) len);
+ return ret;
+}
+
/* Record the value of a region of memory whose address is ADDR and
length is LEN to record_arch_list. */
@@ -504,13 +518,8 @@ record_arch_list_add_mem (CORE_ADDR addr, int len)
rec = record_mem_alloc (addr, len);
- if (target_read_memory (addr, record_get_loc (rec), len))
+ if (record_read_memory (target_gdbarch, addr, record_get_loc (rec), len))
{
- if (record_debug)
- fprintf_unfiltered (gdb_stdlog,
- "Process record: error reading memory at "
- "addr = %s len = %d.\n",
- paddress (target_gdbarch, addr), len);
record_mem_release (rec);
return -1;
}
@@ -739,15 +748,9 @@ record_exec_insn (struct regcache *regcache, struct gdbarch *gdbarch,
paddress (gdbarch, entry->u.mem.addr),
entry->u.mem.len);
- if (target_read_memory (entry->u.mem.addr, mem, entry->u.mem.len))
- {
- entry->u.mem.mem_entry_not_accessible = 1;
- if (record_debug)
- warning (_("Process record: error reading memory at "
- "addr = %s len = %d."),
- paddress (gdbarch, entry->u.mem.addr),
- entry->u.mem.len);
- }
+ if (record_read_memory (gdbarch,
+ entry->u.mem.addr, mem, entry->u.mem.len))
+ entry->u.mem.mem_entry_not_accessible = 1;
else
{
if (target_write_memory (entry->u.mem.addr,