[all-commits] [llvm/llvm-project] b88505: [LoongArch][clang] Use `signed char` vectors inste...

Xi Ruoyao via All-commits all-commits at lists.llvm.org
Sat Nov 2 00:50:03 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b88505414d47ca267f4df8823309264f78935686
      https://github.com/llvm/llvm-project/commit/b88505414d47ca267f4df8823309264f78935686
  Author: Xi Ruoyao <xry111 at xry111.site>
  Date:   2024-11-02 (Sat, 02 Nov 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsLoongArchLASX.def
    M clang/include/clang/Basic/BuiltinsLoongArchLSX.def

  Log Message:
  -----------
  [LoongArch][clang] Use `signed char` vectors instead of `char` vectors for LSX and LASX builtins (#114510)

`-flax-vector-conversions=none` does not allow an implicit conversion
from `signed char` vector to `char` vector, and we cannot remove
`signed`
from `v16i8` or `v32i8` because doing so will break our expectation with
`-fno-signed-char`.  So to make lsxintrin.h and lasxintrin.h work fine
with `-flax-vector-conversions=none`, we must use `signed char` instead
of `char`.
    
The change is just done via
    
    sed 's/V16c/V16Sc/g' -i BuiltinsLoongArchLSX.def
    sed 's/V32c/V32Sc/g' -i BuiltinsLoongArchLASX.def

Depends on #114509.  Part of #110834 fix.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list