| //===----------------------------------------------------------------------===// |
| // |
| // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| // See https://llvm.org/LICENSE.txt for license information. |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #include <clc/clc.h> |
| #include <clc/clcmacro.h> |
| #include <clc/math/clc_fma.h> |
| #include <clc/math/math.h> |
| |
| _CLC_DEFINE_TERNARY_BUILTIN(float, fma, __clc_fma, float, float, float) |
| |
| #ifdef cl_khr_fp64 |
| #pragma OPENCL EXTENSION cl_khr_fp64 : enable |
| |
| _CLC_DEFINE_TERNARY_BUILTIN(double, fma, __clc_fma, double, double, double) |
| |
| #endif |
| |
| #ifdef cl_khr_fp16 |
| #pragma OPENCL EXTENSION cl_khr_fp16 : enable |
| |
| _CLC_DEFINE_TERNARY_BUILTIN(half, fma, __clc_fma, half, half, half) |
| |
| #endif |