On 6/7/21 6:57 PM, Peter Maydell wrote:
> int128_make64() creates an Int128 from an unsigned 64 bit value; add
> a function int128_makes64() creating an Int128 from a signed 64 bit
> value.
>
> Signed-off-by: Peter Maydell <[email protected]>
> ---
> include/qemu/int128.h | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/include/qemu/int128.h b/include/qemu/int128.h
> index 52fc2384211..64500385e37 100644
> --- a/include/qemu/int128.h
> +++ b/include/qemu/int128.h
> @@ -11,6 +11,11 @@ static inline Int128 int128_make64(uint64_t a)
> return a;
> }
> +static inline Int128 int128_makes64(int64_t a)
> +{
> + return (Int128) { a, a >> 63 };
This file would be easier to review using explicit field names:
return (Int128) { .lo = a, .hi = a >> 63 };
Also, maybe we could rename int128_makeX -> int128_make_uX
before introducing int128_make_sX.
Regardless:
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
> +}
> +
> static inline Int128 int128_make128(uint64_t lo, uint64_t hi)
> {
> return (Int128) { lo, hi };
>