Skip to content

[libclc] Move mad_sat to CLC; optimize for vector types #125517

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Feb 3, 2025

Conversation

frasercrmck
Copy link
Contributor

This commit moves the mad_sat builtin to the CLC library.

It also optimizes it for vector types by avoiding scalarization. To help do this it transforms the previous control-flow code into vector select code. This has also been done for the scalar versions for simplicity.

This commit moves the mad_sat builtin to the CLC library.

It also optimizes it for vector types by avoiding scalarization. To help do
this it transforms the previous control-flow code into vector select
code. This has also been done for the scalar versions for simplicity.
@frasercrmck frasercrmck added the libclc libclc OpenCL library label Feb 3, 2025
@frasercrmck frasercrmck requested a review from arsenm February 3, 2025 15:38
@frasercrmck frasercrmck merged commit fe694b1 into llvm:main Feb 3, 2025
8 checks passed
@frasercrmck frasercrmck deleted the libclc-clc-mad-sat branch February 3, 2025 17:50
Icohedron pushed a commit to Icohedron/llvm-project that referenced this pull request Feb 11, 2025
This commit moves the mad_sat builtin to the CLC library.

It also optimizes it for vector types by avoiding scalarization. To help
do this it transforms the previous control-flow code into vector select
code. This has also been done for the scalar versions for simplicity.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
libclc libclc OpenCL library
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants