mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-24 03:59:52 +00:00
s390x/tcg: Fix max_byte detection for stfle
used_stfl_bytes is 0, before initialized via prepare_stfl() on the first invocation. We have to move the calculation of max_bytes after prepare_stfl(). Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: David Hildenbrand <david@redhat.com>
This commit is contained in:
parent
4f83d7d212
commit
88a29e8675
@ -669,7 +669,7 @@ uint32_t HELPER(stfle)(CPUS390XState *env, uint64_t addr)
|
||||
{
|
||||
const uintptr_t ra = GETPC();
|
||||
const int count_bytes = ((env->regs[0] & 0xff) + 1) * 8;
|
||||
const int max_bytes = ROUND_UP(used_stfl_bytes, 8);
|
||||
int max_bytes;
|
||||
int i;
|
||||
|
||||
if (addr & 0x7) {
|
||||
@ -677,6 +677,7 @@ uint32_t HELPER(stfle)(CPUS390XState *env, uint64_t addr)
|
||||
}
|
||||
|
||||
prepare_stfl();
|
||||
max_bytes = ROUND_UP(used_stfl_bytes, 8);
|
||||
for (i = 0; i < count_bytes; ++i) {
|
||||
cpu_stb_data_ra(env, addr + i, stfl_bytes[i], ra);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user