diff options
author | Gary Benson <gbenson@redhat.com> | 2014-09-11 11:19:56 +0100 |
---|---|---|
committer | Gary Benson <gbenson@redhat.com> | 2014-09-11 11:19:56 +0100 |
commit | 721ec300e1e27c2fa7540ef97f39b6c5ce65083f (patch) | |
tree | a0dfc0a39a7bbce24a32af6bed353ba57675eafc /gdb/target.c | |
parent | c5e92cca56da9153985d4c15dab243e383f66919 (diff) | |
download | gdb-721ec300e1e27c2fa7540ef97f39b6c5ce65083f.zip gdb-721ec300e1e27c2fa7540ef97f39b6c5ce65083f.tar.gz gdb-721ec300e1e27c2fa7540ef97f39b6c5ce65083f.tar.bz2 |
Introduce target/target.h
This introduces target/target.h. This file declares some functions
that the shared code can use and that clients must implement. It also
changes some shared code to use these functions.
gdb/ChangeLog:
* target/target.h: New file.
* Makefile.in (HFILES_NO_SRCDIR): Add target/target.h.
* target.h: Include target/target.h.
(target_read_memory, target_write_memory): Don't declare.
* target.c (target_read_uint32): New function.
* common/agent.c: Include target/target.h.
[!GDBSERVER]: Don't include target.h.
(helper_thread_id): Type changed to uint32_t.
(agent_get_helper_thread_id): Use target_read_uint32.
(agent_run_command): Always use target_read_memory and
target_write_memory.
(agent_capability): Type changed to uint32_t.
(agent_capability_check): Use target_read_uint32.
gdb/gdbserver/ChangeLog:
* target.h: Include target/target.h.
* target.c (target_read_memory, target_read_uint32)
(target_write_memory): New functions.
Diffstat (limited to 'gdb/target.c')
-rw-r--r-- | gdb/target.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gdb/target.c b/gdb/target.c index 8bf6031..711e7cb 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -1269,6 +1269,22 @@ target_read_memory (CORE_ADDR memaddr, gdb_byte *myaddr, ssize_t len) return TARGET_XFER_E_IO; } +/* See target/target.h. */ + +int +target_read_uint32 (CORE_ADDR memaddr, uint32_t *result) +{ + gdb_byte buf[4]; + int r; + + r = target_read_memory (memaddr, buf, sizeof buf); + if (r != 0) + return r; + *result = extract_unsigned_integer (buf, sizeof buf, + gdbarch_byte_order (target_gdbarch ())); + return 0; +} + /* Like target_read_memory, but specify explicitly that this is a read from the target's raw memory. That is, this read bypasses the dcache, breakpoint shadowing, etc. */ |