diff options
author | Fraser Cormack <fraser@codeplay.com> | 2025-04-29 10:51:24 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-29 10:51:24 +0100 |
commit | 4609b6a3e76e604463bab2a303c6da737f303237 (patch) | |
tree | c27ef251d7b03e5c69ae0a85e351d03752122d22 /clang/lib/Basic/FileManager.cpp | |
parent | f6b6fb89ec291f677132f912030b9d57c5f7230e (diff) | |
download | llvm-4609b6a3e76e604463bab2a303c6da737f303237.zip llvm-4609b6a3e76e604463bab2a303c6da737f303237.tar.gz llvm-4609b6a3e76e604463bab2a303c6da737f303237.tar.bz2 |
[libclc] Move fmin & fmax to CLC library (#134218)
This is an alternative to #128506 which doesn't attempt to change the
codegen for fmin and fmax on their way to the CLC library.
The amdgcn and r600 custom definitions of fmin/fmax are now converted to
custom definitions of __clc_fmin and __clc_fmax.
For simplicity, the CLC library doesn't provide vector/scalar versions
of these builtins. The OpenCL layer wraps those up to the vector/vector
versions.
The only codegen change is that non-standard vector/scalar overloads of
fmin/fmax have been removed. We were currently (accidentally,
presumably) providing overloads with mixed elment types such as
fmin(double2, float), fmax(half4, double), etc. The only vector/scalar
overloads in the OpenCL spec are those with scalars of the same element
type as the vector in the first argument.
Diffstat (limited to 'clang/lib/Basic/FileManager.cpp')
0 files changed, 0 insertions, 0 deletions