On 04/23/2018 01:56 PM, Peter Maydell wrote: > On 23 April 2018 at 17:25, Philippe Mathieu-Daudé <f4...@amsat.org> wrote: >> As per the "Load and Store APIs" documentation (docs/devel/loads-stores.rst), >> "No signed load operations are provided." > > That phrase is used in the documentation sections for other > kinds of load/store function, but not in the section for ld*_p > and st*_p, which do provide both signed and unsigned flavours. > >> Update lduw_he_p() to return as unsigned. > > Code is changing a different function to the one named here... > >> Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> >> --- >> include/qemu/bswap.h | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/include/qemu/bswap.h b/include/qemu/bswap.h >> index 3f28f661b1..613978f838 100644 >> --- a/include/qemu/bswap.h >> +++ b/include/qemu/bswap.h >> @@ -330,9 +330,9 @@ static inline void stw_he_p(void *ptr, uint16_t v) >> memcpy(ptr, &v, sizeof(v)); >> } >> >> -static inline int ldl_he_p(const void *ptr) >> +static inline uint32_t ldl_he_p(const void *ptr) > > This would make it not match the other ldl*_p functions > (ldl_le_p, ldl_be_p). > > The expectation with the ldl functions is that you're > putting it into a variable of the right type and size, > and so we don't need to provide both a signed 32 bit load > and an unsigned 32 bit load.
OK, thank you for the clarification. Regards, Phil.