[all-commits] [llvm/llvm-project] eb7b16: [libc] Implement generic SIMD helper 'simd.h' and...

Joseph Huber via All-commits all-commits at lists.llvm.org
Tue Sep 2 04:11:29 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: eb7b162ea06091a1bc8b976ae43ee62783dc9fef
      https://github.com/llvm/llvm-project/commit/eb7b162ea06091a1bc8b976ae43ee62783dc9fef
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-09-02 (Tue, 02 Sep 2025)

  Changed paths:
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/algorithm.h
    A libc/src/__support/CPP/simd.h
    M libc/src/__support/macros/attributes.h
    M libc/src/__support/macros/properties/cpu_features.h
    M libc/src/string/CMakeLists.txt
    A libc/src/string/memory_utils/generic/inline_strlen.h
    M libc/src/string/string_utils.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
   [libc] Implement generic SIMD helper 'simd.h' and implement strlen  (#152605)

Summary:
This PR introduces a new 'simd.h' header that implements an interface
similar to the proposed `stdx::simd` in C++. However, we instead wrap
around the LLVM internal type. This makes heavy use of the clang vector
extensions and boolean vectors, instead using primitive vector types
instead of a class (many benefits to this).

I use this interface to implement a generic strlen implementation, but
propse we use this for math. Right now this requires a feature only
introduced in clang-22.



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