accel/tcg: Fix undefined shift in store_whole_le16
The computation is documented as unused in this case, but triggers an ubsan error: ../accel/tcg/ldst_atomicity.c.inc:837:33: runtime error: shift exponent -32 is negative SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ../accel/tcg/ldst_atomicity.c.inc:837:33 in Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-Id: <20230606171629.98157-1-richard.henderson@linaro.org>
This commit is contained in:
parent
80bdd58ae4
commit
c0dde5fc5c
@ -833,7 +833,9 @@ static uint64_t store_whole_le16(void *pv, int size, Int128 val_le)
|
||||
}
|
||||
store_atom_insert_al16(pv - o, v, m);
|
||||
|
||||
/* Unused if sz <= 64. */
|
||||
if (sz <= 64) {
|
||||
return 0;
|
||||
}
|
||||
return int128_gethi(val_le) >> (sz - 64);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user