[all-commits] [llvm/llvm-project] b474c3: [libclc] Move vload & vstore to CLC library (#141755)

Fraser Cormack via All-commits all-commits at lists.llvm.org
Wed May 28 08:16:34 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b474c3f69eae4230fc9a2eff07ba63d2bbac65c0
      https://github.com/llvm/llvm-project/commit/b474c3f69eae4230fc9a2eff07ba63d2bbac65c0
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-05-28 (Wed, 28 May 2025)

  Changed paths:
    A libclc/clc/include/clc/shared/clc_less_aligned_types.h
    A libclc/clc/include/clc/shared/clc_less_aligned_types.inc
    A libclc/clc/include/clc/shared/clc_vload.h
    A libclc/clc/include/clc/shared/clc_vload.inc
    A libclc/clc/include/clc/shared/clc_vstore.h
    A libclc/clc/include/clc/shared/clc_vstore.inc
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/shared/clc_vload.cl
    A libclc/clc/lib/generic/shared/clc_vload_half.inc
    A libclc/clc/lib/generic/shared/clc_vstore.cl
    A libclc/clc/lib/generic/shared/clc_vstore_half.inc
    M libclc/opencl/lib/generic/shared/vload.cl
    A libclc/opencl/lib/generic/shared/vload.inc
    R libclc/opencl/lib/generic/shared/vload_half.inc
    M libclc/opencl/lib/generic/shared/vstore.cl
    A libclc/opencl/lib/generic/shared/vstore.inc
    R libclc/opencl/lib/generic/shared/vstore_half.inc

  Log Message:
  -----------
  [libclc] Move vload & vstore to CLC library (#141755)

This commit moves the various vload and vstore builtins (including
vload_half, vloada_half, etc.) to the CLC library.

This is almost entirely a code move and does not make any attempt to
clean up or optimize the definitions of these builtins. There is no
change to any of the targets' builtin libraries, except that the vstore
helper rounding functions are now internalized.

Cleanups can come in future work. The new CLC declarations and new
OpenCL wrappers show how these CLC implementations could be defined more
simply. The builtins could probably also be vectorized in future work;
right now all of the 'half' versions for both vload and vstore are
essentially scalarized.



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