DPC++ Runtime
Runtime libraries for oneAPI DPC++
builtins_integer.cpp File Reference
#include "builtins_helper.hpp"
#include <CL/sycl/detail/export.hpp>
#include <algorithm>
#include <type_traits>
Include dependency graph for builtins_integer.cpp:

Go to the source code of this file.


 We provide new interfaces for matrix muliply in this patch:


s::cl_uchar cl::__host_std::u_abs (s::cl_uchar x) __NOEXC
s::cl_ushort cl::__host_std::u_abs (s::cl_ushort x) __NOEXC
s::cl_uint cl::__host_std::u_abs (s::cl_uint x) __NOEXC
s::cl_ulong cl::__host_std::u_abs (s::cl_ulong x) __NOEXC
s::cl_uchar cl::__host_std::s_abs (s::cl_char x) __NOEXC
s::cl_ushort cl::__host_std::s_abs (s::cl_short x) __NOEXC
s::cl_uint cl::__host_std::s_abs (s::cl_int x) __NOEXC
s::cl_ulong cl::__host_std::s_abs (s::cl_long x) __NOEXC
s::cl_uchar cl::__host_std::u_abs_diff (s::cl_uchar x, s::cl_uchar y) __NOEXC
s::cl_ushort cl::__host_std::u_abs_diff (s::cl_ushort x, s::cl_ushort y) __NOEXC
s::cl_uint cl::__host_std::u_abs_diff (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_ulong cl::__host_std::u_abs_diff (s::cl_ulong x, s::cl_ulong y) __NOEXC
s::cl_uchar cl::__host_std::s_abs_diff (s::cl_char x, s::cl_char y) __NOEXC
s::cl_ushort cl::__host_std::s_abs_diff (s::cl_short x, s::cl_short y) __NOEXC
s::cl_uint cl::__host_std::s_abs_diff (s::cl_int x, s::cl_int y) __NOEXC
s::cl_ulong cl::__host_std::s_abs_diff (s::cl_long x, s::cl_long y) __NOEXC
s::cl_uchar cl::__host_std::u_add_sat (s::cl_uchar x, s::cl_uchar y) __NOEXC
s::cl_ushort cl::__host_std::u_add_sat (s::cl_ushort x, s::cl_ushort y) __NOEXC
s::cl_uint cl::__host_std::u_add_sat (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_ulong cl::__host_std::u_add_sat (s::cl_ulong x, s::cl_ulong y) __NOEXC
s::cl_char cl::__host_std::s_add_sat (s::cl_char x, s::cl_char y) __NOEXC
s::cl_short cl::__host_std::s_add_sat (s::cl_short x, s::cl_short y) __NOEXC
s::cl_int cl::__host_std::s_add_sat (s::cl_int x, s::cl_int y) __NOEXC
s::cl_long cl::__host_std::s_add_sat (s::cl_long x, s::cl_long y) __NOEXC
s::cl_uchar cl::__host_std::u_hadd (s::cl_uchar x, s::cl_uchar y) __NOEXC
s::cl_ushort cl::__host_std::u_hadd (s::cl_ushort x, s::cl_ushort y) __NOEXC
s::cl_uint cl::__host_std::u_hadd (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_ulong cl::__host_std::u_hadd (s::cl_ulong x, s::cl_ulong y) __NOEXC
s::cl_char cl::__host_std::s_hadd (s::cl_char x, s::cl_char y) __NOEXC
s::cl_short cl::__host_std::s_hadd (s::cl_short x, s::cl_short y) __NOEXC
s::cl_int cl::__host_std::s_hadd (s::cl_int x, s::cl_int y) __NOEXC
s::cl_long cl::__host_std::s_hadd (s::cl_long x, s::cl_long y) __NOEXC
s::cl_uchar cl::__host_std::u_rhadd (s::cl_uchar x, s::cl_uchar y) __NOEXC
s::cl_ushort cl::__host_std::u_rhadd (s::cl_ushort x, s::cl_ushort y) __NOEXC
s::cl_uint cl::__host_std::u_rhadd (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_ulong cl::__host_std::u_rhadd (s::cl_ulong x, s::cl_ulong y) __NOEXC
s::cl_char cl::__host_std::s_rhadd (s::cl_char x, s::cl_char y) __NOEXC
s::cl_short cl::__host_std::s_rhadd (s::cl_short x, s::cl_short y) __NOEXC
s::cl_int cl::__host_std::s_rhadd (s::cl_int x, s::cl_int y) __NOEXC
s::cl_long cl::__host_std::s_rhadd (s::cl_long x, s::cl_long y) __NOEXC
s::cl_uchar cl::__host_std::u_clamp (s::cl_uchar x, s::cl_uchar minval, s::cl_uchar maxval) __NOEXC
s::cl_ushort cl::__host_std::u_clamp (s::cl_ushort x, s::cl_ushort minval, s::cl_ushort maxval) __NOEXC
s::cl_uint cl::__host_std::u_clamp (s::cl_uint x, s::cl_uint minval, s::cl_uint maxval) __NOEXC
s::cl_ulong cl::__host_std::u_clamp (s::cl_ulong x, s::cl_ulong minval, s::cl_ulong maxval) __NOEXC
s::cl_char cl::__host_std::s_clamp (s::cl_char x, s::cl_char minval, s::cl_char maxval) __NOEXC
s::cl_short cl::__host_std::s_clamp (s::cl_short x, s::cl_short minval, s::cl_short maxval) __NOEXC
s::cl_int cl::__host_std::s_clamp (s::cl_int x, s::cl_int minval, s::cl_int maxval) __NOEXC
s::cl_long cl::__host_std::s_clamp (s::cl_long x, s::cl_long minval, s::cl_long maxval) __NOEXC
s::cl_uchar cl::__host_std::clz (s::cl_uchar x) __NOEXC
s::cl_char cl::__host_std::clz (s::cl_char x) __NOEXC
s::cl_ushort cl::__host_std::clz (s::cl_ushort x) __NOEXC
s::cl_short cl::__host_std::clz (s::cl_short x) __NOEXC
s::cl_uint cl::__host_std::clz (s::cl_uint x) __NOEXC
s::cl_int cl::__host_std::clz (s::cl_int x) __NOEXC
s::cl_ulong cl::__host_std::clz (s::cl_ulong x) __NOEXC
s::cl_long cl::__host_std::clz (s::cl_long x) __NOEXC
s::cl_uchar cl::__host_std::ctz (s::cl_uchar x) __NOEXC
s::cl_char cl::__host_std::ctz (s::cl_char x) __NOEXC
s::cl_ushort cl::__host_std::ctz (s::cl_ushort x) __NOEXC
s::cl_short cl::__host_std::ctz (s::cl_short x) __NOEXC
s::cl_uint cl::__host_std::ctz (s::cl_uint x) __NOEXC
s::cl_int cl::__host_std::ctz (s::cl_int x) __NOEXC
s::cl_ulong cl::__host_std::ctz (s::cl_ulong x) __NOEXC
s::cl_long cl::__host_std::ctz (s::cl_long x) __NOEXC
s::cl_char cl::__host_std::s_mul_hi (s::cl_char a, s::cl_char b)
s::cl_short cl::__host_std::s_mul_hi (s::cl_short a, s::cl_short b)
s::cl_int cl::__host_std::s_mul_hi (s::cl_int a, s::cl_int b)
s::cl_long cl::__host_std::s_mul_hi (s::cl_long x, s::cl_long y) __NOEXC
s::cl_uchar cl::__host_std::u_mul_hi (s::cl_uchar a, s::cl_uchar b)
s::cl_ushort cl::__host_std::u_mul_hi (s::cl_ushort a, s::cl_ushort b)
s::cl_uint cl::__host_std::u_mul_hi (s::cl_uint a, s::cl_uint b)
s::cl_ulong cl::__host_std::u_mul_hi (s::cl_ulong x, s::cl_ulong y) __NOEXC
s::cl_char cl::__host_std::s_mad_hi (s::cl_char x, s::cl_char minval, s::cl_char maxval) __NOEXC
s::cl_short cl::__host_std::s_mad_hi (s::cl_short x, s::cl_short minval, s::cl_short maxval) __NOEXC
s::cl_int cl::__host_std::s_mad_hi (s::cl_int x, s::cl_int minval, s::cl_int maxval) __NOEXC
s::cl_long cl::__host_std::s_mad_hi (s::cl_long x, s::cl_long minval, s::cl_long maxval) __NOEXC
s::cl_uchar cl::__host_std::u_mad_hi (s::cl_uchar x, s::cl_uchar minval, s::cl_uchar maxval) __NOEXC
s::cl_ushort cl::__host_std::u_mad_hi (s::cl_ushort x, s::cl_ushort minval, s::cl_ushort maxval) __NOEXC
s::cl_uint cl::__host_std::u_mad_hi (s::cl_uint x, s::cl_uint minval, s::cl_uint maxval) __NOEXC
s::cl_ulong cl::__host_std::u_mad_hi (s::cl_ulong x, s::cl_ulong minval, s::cl_ulong maxval) __NOEXC
s::cl_char cl::__host_std::s_mad_sat (s::cl_char a, s::cl_char b, s::cl_char c) __NOEXC
s::cl_short cl::__host_std::s_mad_sat (s::cl_short a, s::cl_short b, s::cl_short c) __NOEXC
s::cl_int cl::__host_std::s_mad_sat (s::cl_int a, s::cl_int b, s::cl_int c) __NOEXC
s::cl_long cl::__host_std::s_mad_sat (s::cl_long a, s::cl_long b, s::cl_long c) __NOEXC
s::cl_uchar cl::__host_std::u_mad_sat (s::cl_uchar a, s::cl_uchar b, s::cl_uchar c) __NOEXC
s::cl_ushort cl::__host_std::u_mad_sat (s::cl_ushort a, s::cl_ushort b, s::cl_ushort c) __NOEXC
s::cl_uint cl::__host_std::u_mad_sat (s::cl_uint a, s::cl_uint b, s::cl_uint c) __NOEXC
s::cl_ulong cl::__host_std::u_mad_sat (s::cl_ulong a, s::cl_ulong b, s::cl_ulong c) __NOEXC
s::cl_char cl::__host_std::s_max (s::cl_char x, s::cl_char y) __NOEXC
s::cl_short cl::__host_std::s_max (s::cl_short x, s::cl_short y) __NOEXC
s::cl_int cl::__host_std::s_max (s::cl_int x, s::cl_int y) __NOEXC
s::cl_long cl::__host_std::s_max (s::cl_long x, s::cl_long y) __NOEXC
s::cl_uchar cl::__host_std::u_max (s::cl_uchar x, s::cl_uchar y) __NOEXC
s::cl_ushort cl::__host_std::u_max (s::cl_ushort x, s::cl_ushort y) __NOEXC
s::cl_uint cl::__host_std::u_max (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_ulong cl::__host_std::u_max (s::cl_ulong x, s::cl_ulong y) __NOEXC
s::cl_char cl::__host_std::s_min (s::cl_char x, s::cl_char y) __NOEXC
s::cl_short cl::__host_std::s_min (s::cl_short x, s::cl_short y) __NOEXC
s::cl_int cl::__host_std::s_min (s::cl_int x, s::cl_int y) __NOEXC
s::cl_long cl::__host_std::s_min (s::cl_long x, s::cl_long y) __NOEXC
s::cl_uchar cl::__host_std::u_min (s::cl_uchar x, s::cl_uchar y) __NOEXC
s::cl_ushort cl::__host_std::u_min (s::cl_ushort x, s::cl_ushort y) __NOEXC
s::cl_uint cl::__host_std::u_min (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_ulong cl::__host_std::u_min (s::cl_ulong x, s::cl_ulong y) __NOEXC
s::cl_uchar cl::__host_std::rotate (s::cl_uchar x, s::cl_uchar y) __NOEXC
s::cl_ushort cl::__host_std::rotate (s::cl_ushort x, s::cl_ushort y) __NOEXC
s::cl_uint cl::__host_std::rotate (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_ulong cl::__host_std::rotate (s::cl_ulong x, s::cl_ulong y) __NOEXC
s::cl_char cl::__host_std::rotate (s::cl_char x, s::cl_char y) __NOEXC
s::cl_short cl::__host_std::rotate (s::cl_short x, s::cl_short y) __NOEXC
s::cl_int cl::__host_std::rotate (s::cl_int x, s::cl_int y) __NOEXC
s::cl_long cl::__host_std::rotate (s::cl_long x, s::cl_long y) __NOEXC
s::cl_uchar cl::__host_std::u_sub_sat (s::cl_uchar x, s::cl_uchar y) __NOEXC
s::cl_ushort cl::__host_std::u_sub_sat (s::cl_ushort x, s::cl_ushort y) __NOEXC
s::cl_uint cl::__host_std::u_sub_sat (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_ulong cl::__host_std::u_sub_sat (s::cl_ulong x, s::cl_ulong y) __NOEXC
s::cl_char cl::__host_std::s_sub_sat (s::cl_char x, s::cl_char y) __NOEXC
s::cl_short cl::__host_std::s_sub_sat (s::cl_short x, s::cl_short y) __NOEXC
s::cl_int cl::__host_std::s_sub_sat (s::cl_int x, s::cl_int y) __NOEXC
s::cl_long cl::__host_std::s_sub_sat (s::cl_long x, s::cl_long y) __NOEXC
s::cl_ushort cl::__host_std::u_upsample (s::cl_uchar x, s::cl_uchar y) __NOEXC
s::cl_uint cl::__host_std::u_upsample (s::cl_ushort x, s::cl_ushort y) __NOEXC
s::cl_ulong cl::__host_std::u_upsample (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_short cl::__host_std::s_upsample (s::cl_char x, s::cl_uchar y) __NOEXC
s::cl_int cl::__host_std::s_upsample (s::cl_short x, s::cl_ushort y) __NOEXC
s::cl_long cl::__host_std::s_upsample (s::cl_int x, s::cl_uint y) __NOEXC
s::cl_uchar cl::__host_std::popcount (s::cl_uchar x) __NOEXC
s::cl_ushort cl::__host_std::popcount (s::cl_ushort x) __NOEXC
s::cl_uint cl::__host_std::popcount (s::cl_uint x) __NOEXC
s::cl_ulong cl::__host_std::popcount (s::cl_ulong x) __NOEXC
s::cl_char cl::__host_std::popcount (s::cl_char x) __NOEXC
s::cl_short cl::__host_std::popcount (s::cl_short x) __NOEXC
s::cl_int cl::__host_std::popcount (s::cl_int x) __NOEXC
s::cl_long cl::__host_std::popcount (s::cl_long x) __NOEXC
s::cl_uint cl::__host_std::u_mad24 (s::cl_uint x, s::cl_uint y, s::cl_uint z) __NOEXC
s::cl_int cl::__host_std::s_mad24 (s::cl_int x, s::cl_int y, s::cl_int z) __NOEXC
s::cl_uint cl::__host_std::u_mul24 (s::cl_uint x, s::cl_uint y) __NOEXC
s::cl_int cl::__host_std::s_mul24 (s::cl_int x, s::cl_int y) __NOEXC