summaryrefslogtreecommitdiff
path: root/sim/erc32
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2022-10-26 21:53:30 +0545
committerMike Frysinger <vapier@gentoo.org>2022-10-31 21:24:39 +0545
commit5b94c3808140206d3b5204a3780f294d590cc458 (patch)
tree4b5bea9bdc30a6ab503bd3d1c289b5e6f20af836 /sim/erc32
parentf2462532e24ebfc137598d73ee6541948121f040 (diff)
downloadbinutils-gdb-5b94c3808140206d3b5204a3780f294d590cc458.tar.gz
sim: common: change sim_read & sim_write to use void* buffers
When reading/writing arbitrary data to the system's memory, the unsigned char pointer type doesn't make that much sense. Switch it to void so we align a bit with standard C library read/write functions, and to avoid having to sprinkle casts everywhere.
Diffstat (limited to 'sim/erc32')
-rw-r--r--sim/erc32/interf.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sim/erc32/interf.c b/sim/erc32/interf.c
index aa3ffdc7ada..fc4336c5f6f 100644
--- a/sim/erc32/interf.c
+++ b/sim/erc32/interf.c
@@ -329,23 +329,25 @@ sim_fetch_register(SIM_DESC sd, int regno, unsigned char *buf, int length)
}
int
-sim_write (SIM_DESC sd, SIM_ADDR mem, const unsigned char *buf, int length)
+sim_write (SIM_DESC sd, SIM_ADDR mem, const void *buffer, int length)
{
int i, len;
+ const unsigned char *data = buffer;
for (i = 0; i < length; i++) {
- sis_memory_write ((mem + i) ^ EBT, &buf[i], 1);
+ sis_memory_write ((mem + i) ^ EBT, &data[i], 1);
}
return length;
}
int
-sim_read (SIM_DESC sd, SIM_ADDR mem, unsigned char *buf, int length)
+sim_read (SIM_DESC sd, SIM_ADDR mem, void *buffer, int length)
{
int i, len;
+ unsigned char *data = buffer;
for (i = 0; i < length; i++) {
- sis_memory_read ((mem + i) ^ EBT, &buf[i], 1);
+ sis_memory_read ((mem + i) ^ EBT, &data[i], 1);
}
return length;
}