Re: [PATCH v3 3/4] LoongArch: Set AS_HAS_THIN_ADD_SUB as y if AS_IS_LLVM

From: Huacai Chen
Date: Sun Sep 08 2024 - 21:05:35 EST


On Sun, Sep 8, 2024 at 10:43 PM Xi Ruoyao <xry111@xxxxxxxxxxx> wrote:
>
> On Wed, 2024-08-07 at 16:59 +0800, Tiezhu Yang wrote:
> > When building kernel with "make CC=clang defconfig", LLVM Assembler
> > is used due to LLVM_IAS=0 is not specified, then AS_HAS_THIN_ADD_SUB
> > is not set, thus objtool can not be built after enable it for Clang.
> >
> > config AS_HAS_THIN_ADD_SUB is to check whether -mthin-add-sub option is
> > available to know R_LARCH_{32,64}_PCREL are supported for GNU Assembler,
> > there is no this option for LLVM Assembler. The minimal version of Clang
> > is 18 for building LoongArch kernel, and Clang >= 17 already supports
> > R_LARCH_{32,64}_PCREL, that is to say, there is no need to depend on
> > AS_HAS_THIN_ADD_SUB for Clang, so just set AS_HAS_THIN_ADD_SUB as y if
> > AS_IS_LLVM.
> >
> > Fixes: 120dd4118e58 ("LoongArch: Only allow OBJTOOL & ORC unwinder if toolchain supports -mthin-add-sub")
> > Signed-off-by: Tiezhu Yang <yangtiezhu@xxxxxxxxxxx>
>
> This is what I wanted in
> https://lore.kernel.org/all/20240604150741.30252-1-xry111@xxxxxxxxxxx/.
Then which one is better? AS_IS_LLVM or CC_IS_CLANG?

Huacai

>
> Reviewed-by: Xi Ruoyao <xry111@xxxxxxxxxxx>
>
> > ---
> > arch/loongarch/Kconfig | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/loongarch/Kconfig b/arch/loongarch/Kconfig
> > index 70f169210b52..e1b6cb306d4d 100644
> > --- a/arch/loongarch/Kconfig
> > +++ b/arch/loongarch/Kconfig
> > @@ -265,7 +265,7 @@ config AS_HAS_FCSR_CLASS
> > def_bool $(as-instr,movfcsr2gr \$t0$(comma)\$fcsr0)
> >
> > config AS_HAS_THIN_ADD_SUB
> > - def_bool $(cc-option,-Wa$(comma)-mthin-add-sub)
> > + def_bool $(cc-option,-Wa$(comma)-mthin-add-sub) || AS_IS_LLVM
> >
> > config AS_HAS_LSX_EXTENSION
> > def_bool $(as-instr,vld \$vr0$(comma)\$a0$(comma)0)
>
> --
> Xi Ruoyao <xry111@xxxxxxxxxxx>
> School of Aerospace Science and Technology, Xidian University