On 3/28/25 8:49 AM, Jan Beulich wrote:
On 27.03.2025 18:33, Oleksii Kurochko wrote:
BITS_PER_* values can be defined in a common way using compiler-provided macros.
Thus, these definitions are moved to xen/config.h to reduce duplication across
architectures.

Additionally, *_BYTEORDER macros are removed, as BITS_PER_* values now come
directly from the compiler environment.

The arch_fls() implementation for Arm and PPC is updated to use BITS_PER_INT
instead of a hardcoded value of 32.

Suggested-by: Andrew Cooper<andrew.coop...@citrix.com>
Signed-off-by: Oleksii Kurochko<oleksii.kuroc...@gmail.com>
Reviewed-by: Jan Beulich<jbeul...@suse.com>
albeit ...

--- a/xen/include/xen/config.h
+++ b/xen/include/xen/config.h
@@ -98,4 +98,14 @@
  #define ZERO_BLOCK_PTR ((void *)-1L)
  #endif
+#define BYTES_PER_LONG __SIZEOF_LONG__
... I remain unconvinced that we actually need this (yet then not its sibling
for int). All uses I can spot could be replaced by sizeof(long). This (and its
sibling) would be needed only for #if uses, and there I would then wonder why
we couldn't use __SIZEOF_LONG__ directly, now that we assume its universally
available.

I left only because|BYTES_PER_LONG| is used in ARM and x86 code.
If no one minds, I can replace|BYTES_PER_LONG| with|__SIZEOF_LONG__|.

~ Oleksii

Reply via email to