[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 4/7] bitops: Support 32 and 64 bit mask macro
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH 4/7] bitops: Support 32 and 64 bit mask macro |
Date: |
Wed, 8 Sep 2021 10:34:39 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 |
On 9/8/21 10:19 AM, Yang Zhong wrote:
> The Qemu should enable bit mask macro like Linux did in the
> kernel, the GENMASK(h, l) and GENMASK_ULL(h, l) will set the
> bit to 1 from l to h bit in the 32 bit or 64 bit long type.
>
> Signed-off-by: Yang Zhong <yang.zhong@intel.com>
> ---
> include/qemu/bitops.h | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/include/qemu/bitops.h b/include/qemu/bitops.h
> index 03213ce952..04dec60670 100644
> --- a/include/qemu/bitops.h
> +++ b/include/qemu/bitops.h
> @@ -18,6 +18,7 @@
>
> #define BITS_PER_BYTE CHAR_BIT
> #define BITS_PER_LONG (sizeof (unsigned long) * BITS_PER_BYTE)
> +#define BITS_PER_LONG_LONG 64
>
> #define BIT(nr) (1UL << (nr))
> #define BIT_ULL(nr) (1ULL << (nr))
> @@ -28,6 +29,12 @@
> #define MAKE_64BIT_MASK(shift, length) \
> (((~0ULL) >> (64 - (length))) << (shift))
>
> +#define GENMASK(h, l) \
> + (((~0UL) << (l)) & (~0UL >> (BITS_PER_LONG - 1 - (h))))
> +
> +#define GENMASK_ULL(h, l) \
> + (((~0ULL) << (l)) & (~0ULL >> (BITS_PER_LONG_LONG - 1 - (h))))
What is the difference with MAKE_64BIT_MASK()??
- [PATCH 0/7] The HMP/QMP interfaces in Qemu SGX, Yang Zhong, 2021/09/08
- [PATCH 2/7] hmp: Add 'info sgx' command, Yang Zhong, 2021/09/08
- [PATCH 3/7] i386: Add sgx_get_info() interface, Yang Zhong, 2021/09/08
- [PATCH 1/7] qmp: Add query-sgx command, Yang Zhong, 2021/09/08
- [PATCH 4/7] bitops: Support 32 and 64 bit mask macro, Yang Zhong, 2021/09/08
- Re: [PATCH 4/7] bitops: Support 32 and 64 bit mask macro,
Philippe Mathieu-Daudé <=
- [PATCH 5/7] qmp: Add the qmp_query_sgx_capabilities(), Yang Zhong, 2021/09/08
[PATCH 7/7] pc: Cleanup the SGX definitions, Yang Zhong, 2021/09/08
[PATCH 6/7] monitor: Fix coredump issue in non-x86 platform, Yang Zhong, 2021/09/08