On 11.09.19 17:18, Richard Henderson wrote: > On 9/6/19 3:57 AM, David Hildenbrand wrote: >> 24 and 31-bit address space handling is wrong when it comes to storing >> back the addresses to the register. >> >> Signed-off-by: David Hildenbrand <da...@redhat.com> >> --- >> target/s390x/helper.h | 2 +- >> target/s390x/insn-data.def | 2 +- >> target/s390x/mem_helper.c | 20 ++++++++------------ >> target/s390x/translate.c | 8 ++++++-- >> 4 files changed, 16 insertions(+), 16 deletions(-) > > Reviewed-by: Richard Henderson <richard.hender...@linaro.org> > > >> -uint64_t HELPER(mvst)(CPUS390XState *env, uint64_t c, uint64_t d, uint64_t >> s) >> +uint32_t HELPER(mvst)(CPUS390XState *env, uint64_t c, uint32_t r1, uint32_t >> r2) >> { >> + const uint64_t d = get_address(env, r1); >> + const uint64_t s = get_address(env, r2); > > While you're changing the signature, you could also read R0 implicitly from > env > instead of passing it as C. >
Had exactly the same in mind, will do! -- Thanks, David / dhildenb