[PATCH] D150196: [LoongArch] Remove AssemblerPredicate for features: f/d/lsx/lasx/lvz/lbt

Xi Ruoyao via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 9 08:17:31 PDT 2023


xry111 added a comment.

In D150196#4329730 <https://reviews.llvm.org/D150196#4329730>, @SixWeining wrote:

> In D150196#4329518 <https://reviews.llvm.org/D150196#4329518>, @xry111 wrote:
>
>> Hmm, I think it's a kernel issue and should be fixed by using `-mabi=lp64s` instead of `-msoft-float` for this specific file...



> Makes sense. I'm not sure whether kernel‘s Makefile can distinguish .c and .S (or .c with floating-point insn inlineasm). I'll report this issue to Huacai tomorrow.

AFAIK we just need

  CFLAGS_fpu.o  = -mabi=lp64s
  CFLAGS_REMOVE_fpu.o = -msoft-float

KBuild has a fine-grained control on CFLAGS for TUs.

> Seems there is another approach: add an assembler option to IAS called `-mfpu=64/32/0/none`.
> Then kernel Makefile can be:
>
>   if LLVM == 1 && LLVM_IAS ==1
>     cflags-y = -msolft-float -Wa,-mfpu=64
>   endif




Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D150196/new/

https://reviews.llvm.org/D150196



More information about the llvm-commits mailing list