2023-03-07 07:40:47

by Tiezhu Yang

[permalink] [raw]
Subject: [PATCH] tools/arch/loongarch: Use __SIZEOF_LONG__ to define __BITS_PER_LONG

Although __SIZEOF_POINTER__ is equal with _SIZEOF_LONG__ on LoongArch,
it is better to use __SIZEOF_LONG__ to define __BITS_PER_LONG to keep
consistent between arch/loongarch/include/uapi/asm/bitsperlong.h and
tools/arch/loongarch/include/uapi/asm/bitsperlong.h.

Signed-off-by: Tiezhu Yang <[email protected]>
---
tools/arch/loongarch/include/uapi/asm/bitsperlong.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/arch/loongarch/include/uapi/asm/bitsperlong.h b/tools/arch/loongarch/include/uapi/asm/bitsperlong.h
index d4e32b3..00b4ba1 100644
--- a/tools/arch/loongarch/include/uapi/asm/bitsperlong.h
+++ b/tools/arch/loongarch/include/uapi/asm/bitsperlong.h
@@ -2,7 +2,7 @@
#ifndef __ASM_LOONGARCH_BITSPERLONG_H
#define __ASM_LOONGARCH_BITSPERLONG_H

-#define __BITS_PER_LONG (__SIZEOF_POINTER__ * 8)
+#define __BITS_PER_LONG (__SIZEOF_LONG__ * 8)

#include <asm-generic/bitsperlong.h>

--
2.1.0



2023-03-07 07:52:34

by Xi Ruoyao

[permalink] [raw]
Subject: Re: [PATCH] tools/arch/loongarch: Use __SIZEOF_LONG__ to define __BITS_PER_LONG

On Tue, 2023-03-07 at 15:39 +0800, Tiezhu Yang wrote:
> Although __SIZEOF_POINTER__ is equal with _SIZEOF_LONG__ on LoongArch,
> it is better to use __SIZEOF_LONG__ to define __BITS_PER_LONG to keep
> consistent between arch/loongarch/include/uapi/asm/bitsperlong.h and
> tools/arch/loongarch/include/uapi/asm/bitsperlong.h.

I believe we should unify bitsperlong.h for all ports to use
(__SIZEOF_LONG__ * 8). Now we specify GCC >= 5.1 or Clang (LLVM) >=
11.0.0 in min-tool-version.sh, where __SIZEOF_LONG__ is usable [1]. The
only remaining compiler is ICC, which is deprecated and won't be
supported for building the kernel after 6.3 [2].

[1]:https://gcc.godbolt.org/z/cnvW38vj6
[2]:https://www.phoronix.com/news/Linux-6.3-Drops-Intel-ICC

>
> Signed-off-by: Tiezhu Yang <[email protected]>
> ---
>  tools/arch/loongarch/include/uapi/asm/bitsperlong.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/arch/loongarch/include/uapi/asm/bitsperlong.h
> b/tools/arch/loongarch/include/uapi/asm/bitsperlong.h
> index d4e32b3..00b4ba1 100644
> --- a/tools/arch/loongarch/include/uapi/asm/bitsperlong.h
> +++ b/tools/arch/loongarch/include/uapi/asm/bitsperlong.h
> @@ -2,7 +2,7 @@
>  #ifndef __ASM_LOONGARCH_BITSPERLONG_H
>  #define __ASM_LOONGARCH_BITSPERLONG_H
>  
> -#define __BITS_PER_LONG (__SIZEOF_POINTER__ * 8)
> +#define __BITS_PER_LONG (__SIZEOF_LONG__ * 8)
>  
>  #include <asm-generic/bitsperlong.h>
>  

--
Xi Ruoyao <[email protected]>
School of Aerospace Science and Technology, Xidian University