diff options
author | Pedro Alves <palves@redhat.com> | 2012-07-20 11:22:31 +0000 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2012-07-20 11:22:31 +0000 |
commit | 2a3986d5229b62f4f5adfcc44286704324d8dbad (patch) | |
tree | cdc635f67f084f34df498dffda33509df4a4f97a /gdb/record.c | |
parent | 507c8f61614dbdd7d859178d57b59d36e37fce16 (diff) | |
download | gdb-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.c | 33 |
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, |