[all-commits] [llvm/llvm-project] 76d1cb: [libclc] Move rotate to CLC library; optimize (#12...

Fraser Cormack via All-commits all-commits at lists.llvm.org
Wed Feb 5 02:38:45 PST 2025


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

  Changed paths:
    A libclc/clc/include/clc/integer/clc_rotate.h
    M libclc/clc/lib/clspv/SOURCES
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/integer/clc_rotate.cl
    A libclc/clc/lib/generic/integer/clc_rotate.inc
    M libclc/clc/lib/spirv/SOURCES
    M libclc/generic/lib/integer/rotate.cl
    R libclc/generic/lib/integer/rotate.inc

  Log Message:
  -----------
  [libclc] Move rotate to CLC library; optimize (#125713)

This commit moves the rotate builtin to the CLC library.

It also optimizes rotate(x, n) to generate the @llvm.fshl(x, x, n)
intrinsic, for both scalar and vector types. The previous implementation
was too cautious in its handling of the shift amount; the OpenCL rules
state that the shift amount is always treated as an unsigned value
modulo the bitwidth.



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