diff options
author | Andrew Burgess <andrew.burgess@embecosm.com> | 2021-02-01 11:37:46 +0000 |
---|---|---|
committer | Andrew Burgess <andrew.burgess@embecosm.com> | 2021-02-08 11:01:07 +0000 |
commit | da9ecd6085aa03f6f671f1e42431642912635820 (patch) | |
tree | 29ab615d0271ba45401ada319911f7ee1476a545 /sim/rx/mem.c | |
parent | fab2b376e305bfb4c55a51a15d8c7a293628d735 (diff) | |
download | fsf-binutils-gdb-da9ecd6085aa03f6f671f1e42431642912635820.zip fsf-binutils-gdb-da9ecd6085aa03f6f671f1e42431642912635820.tar.gz fsf-binutils-gdb-da9ecd6085aa03f6f671f1e42431642912635820.tar.bz2 |
sim/rx: avoid pointer arithmetic on void * pointers
Pointer arithmetic on void * pointers results in a GCC warning. Avoid
the warning by casting the pointer to its actual type earlier in the
function.
sim/rx/ChangeLog:
* mem.c (mem_put_blk): Rename parameter, add cast from parameter
type to local type. Remove cast later in the function.
(mem_get_blk): Likewise.
* mem.h (mem_put_blk): Rename parameter to match definition.
(mem_get_blk): Likewise.
Diffstat (limited to 'sim/rx/mem.c')
-rw-r--r-- | sim/rx/mem.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/sim/rx/mem.c b/sim/rx/mem.c index fe8e08d..7e62bfb 100644 --- a/sim/rx/mem.c +++ b/sim/rx/mem.c @@ -434,13 +434,15 @@ mem_put_si (int address, unsigned long value) } void -mem_put_blk (int address, void *bufptr, int nbytes) +mem_put_blk (int address, void *bufptr_void, int nbytes) { + unsigned char *bufptr = (unsigned char *) bufptr_void; + S ("<="); if (enable_counting) mem_counters[1][1] += nbytes; while (nbytes--) - mem_put_byte (address++, *(unsigned char *) bufptr++); + mem_put_byte (address++, *bufptr++); E (); } @@ -567,13 +569,15 @@ mem_get_si (int address) } void -mem_get_blk (int address, void *bufptr, int nbytes) +mem_get_blk (int address, void *bufptr_void, int nbytes) { + char *bufptr = (char *) bufptr_void; + S ("=>"); if (enable_counting) mem_counters[0][1] += nbytes; while (nbytes--) - *(char *) bufptr++ = mem_get_byte (address++); + *bufptr++ = mem_get_byte (address++); E (); } |