DPC++ Runtime
Runtime libraries for oneAPI DPC++
aliases.hpp File Reference
#include <CL/sycl/detail/cl.h>
#include <CL/sycl/detail/common.hpp>
#include <cstddef>
#include <cstdint>
Include dependency graph for aliases.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  cl::sycl::vec< Type, NumElements >
 Provides a cross-patform vector class template that works efficiently on SYCL devices as well as in host C++ code. More...
 

Namespaces

 cl
 We provide new interfaces for matrix muliply in this patch:
 
 cl::sycl
 
 cl::sycl::detail
 
 cl::sycl::detail::half_impl
 

Macros

#define __SYCL_MAKE_VECTOR_ALIAS(ALIAS, TYPE, N)   using ALIAS##N = cl::sycl::vec<TYPE, N>;
 
#define __SYCL_MAKE_VECTOR_ALIASES_FOR_ARITHMETIC_TYPES(N)
 
#define __SYCL_MAKE_VECTOR_ALIASES_FOR_OPENCL_TYPES(N)
 
#define __SYCL_MAKE_VECTOR_ALIASES_FOR_SIGNED_AND_UNSIGNED_TYPES(N)
 
#define __SYCL_MAKE_VECTOR_ALIASES_FOR_VECTOR_LENGTH(N)
 

Typedefs

using cl::sycl::instead = std::uint8_t
 
using cl::sycl::schar = signed char
 
using cl::sycl::uchar = unsigned char
 
using cl::sycl::ushort = unsigned short
 
using cl::sycl::uint = unsigned int
 
using cl::sycl::ulong = unsigned long
 
using cl::sycl::longlong = long long
 
using cl::sycl::ulonglong = unsigned long long
 
using cl::sycl::half = cl::sycl::detail::half_impl::half
 
using cl::sycl::cl_bool = bool
 
using cl::sycl::cl_char = std::int8_t
 
using cl::sycl::cl_uchar = std::uint8_t
 
using cl::sycl::cl_short = std::int16_t
 
using cl::sycl::cl_ushort = std::uint16_t
 
using cl::sycl::cl_int = std::int32_t
 
using cl::sycl::cl_uint = std::uint32_t
 
using cl::sycl::cl_long = std::int64_t
 
using cl::sycl::cl_ulong = std::uint64_t
 
using cl::sycl::cl_half = half
 
using cl::sycl::cl_float = float
 
using cl::sycl::cl_double = double
 

Macro Definition Documentation

◆ __SYCL_MAKE_VECTOR_ALIAS

#define __SYCL_MAKE_VECTOR_ALIAS (   ALIAS,
  TYPE,
 
)    using ALIAS##N = cl::sycl::vec<TYPE, N>;

Definition at line 28 of file aliases.hpp.

◆ __SYCL_MAKE_VECTOR_ALIASES_FOR_ARITHMETIC_TYPES

#define __SYCL_MAKE_VECTOR_ALIASES_FOR_ARITHMETIC_TYPES (   N)
Value:
__SYCL_MAKE_VECTOR_ALIAS(char, char, N) \
__SYCL_MAKE_VECTOR_ALIAS(short, short, N) \
__SYCL_MAKE_VECTOR_ALIAS(int, int, N) \
__SYCL_MAKE_VECTOR_ALIAS(long, long, N) \
__SYCL_MAKE_VECTOR_ALIAS(float, float, N) \
__SYCL_MAKE_VECTOR_ALIAS(double, double, N) \
__SYCL_MAKE_VECTOR_ALIAS(half, half, N)

Definition at line 31 of file aliases.hpp.

◆ __SYCL_MAKE_VECTOR_ALIASES_FOR_OPENCL_TYPES

#define __SYCL_MAKE_VECTOR_ALIASES_FOR_OPENCL_TYPES (   N)
Value:
__SYCL_MAKE_VECTOR_ALIAS(cl_uchar, cl::sycl::cl_uchar, N) \
__SYCL_MAKE_VECTOR_ALIAS(cl_short, cl::sycl::cl_short, N) \
__SYCL_MAKE_VECTOR_ALIAS(cl_ushort, cl::sycl::cl_ushort, N) \
__SYCL_MAKE_VECTOR_ALIAS(cl_int, cl::sycl::cl_int, N) \
__SYCL_MAKE_VECTOR_ALIAS(cl_uint, cl::sycl::cl_uint, N) \
__SYCL_MAKE_VECTOR_ALIAS(cl_long, cl::sycl::cl_long, N) \
__SYCL_MAKE_VECTOR_ALIAS(cl_ulong, cl::sycl::cl_ulong, N) \
__SYCL_MAKE_VECTOR_ALIAS(cl_float, cl::sycl::cl_float, N) \
__SYCL_MAKE_VECTOR_ALIAS(cl_double, cl::sycl::cl_double, N) \
__SYCL_MAKE_VECTOR_ALIAS(cl_half, cl::sycl::cl_half, N)

Definition at line 40 of file aliases.hpp.

◆ __SYCL_MAKE_VECTOR_ALIASES_FOR_SIGNED_AND_UNSIGNED_TYPES

#define __SYCL_MAKE_VECTOR_ALIASES_FOR_SIGNED_AND_UNSIGNED_TYPES (   N)
Value:
__SYCL_MAKE_VECTOR_ALIAS(schar, signed char, N) \
__SYCL_MAKE_VECTOR_ALIAS(uchar, unsigned char, N) \
__SYCL_MAKE_VECTOR_ALIAS(ushort, unsigned short, N) \
__SYCL_MAKE_VECTOR_ALIAS(uint, unsigned int, N) \
__SYCL_MAKE_VECTOR_ALIAS(ulong, unsigned long, N) \
__SYCL_MAKE_VECTOR_ALIAS(longlong, long long, N) \
__SYCL_MAKE_VECTOR_ALIAS(ulonglong, unsigned long long, N)

Definition at line 53 of file aliases.hpp.

◆ __SYCL_MAKE_VECTOR_ALIASES_FOR_VECTOR_LENGTH

#define __SYCL_MAKE_VECTOR_ALIASES_FOR_VECTOR_LENGTH (   N)
Value:
__SYCL_MAKE_VECTOR_ALIASES_FOR_OPENCL_TYPES(N) \
__SYCL_MAKE_VECTOR_ALIASES_FOR_SIGNED_AND_UNSIGNED_TYPES(N)

Definition at line 62 of file aliases.hpp.

cl::sycl::cl_double
double cl_double
Definition: aliases.hpp:89
cl::sycl::cl_half
half cl_half
Definition: aliases.hpp:87
cl::sycl::cl_uchar
std::uint8_t cl_uchar
Definition: aliases.hpp:80
cl::sycl::cl_long
std::int64_t cl_long
Definition: aliases.hpp:85
cl::sycl::ulong
unsigned long ulong
Definition: aliases.hpp:74
__SYCL_MAKE_VECTOR_ALIAS
#define __SYCL_MAKE_VECTOR_ALIAS(ALIAS, TYPE, N)
Definition: aliases.hpp:28
cl::sycl::half
cl::sycl::detail::half_impl::half half
Definition: aliases.hpp:77
__SYCL_MAKE_VECTOR_ALIASES_FOR_ARITHMETIC_TYPES
#define __SYCL_MAKE_VECTOR_ALIASES_FOR_ARITHMETIC_TYPES(N)
Definition: aliases.hpp:31
cl::sycl::cl_ushort
std::uint16_t cl_ushort
Definition: aliases.hpp:82
cl::sycl::detail::half_impl::half
Definition: half_type.hpp:329
cl::sycl::longlong
long long longlong
Definition: aliases.hpp:75
cl::sycl::cl_char
std::int8_t cl_char
Definition: aliases.hpp:79
cl::sycl::cl_ulong
std::uint64_t cl_ulong
Definition: aliases.hpp:86
cl::sycl::cl_float
float cl_float
Definition: aliases.hpp:88
cl::sycl::ulonglong
unsigned long long ulonglong
Definition: aliases.hpp:76
cl::sycl::uchar
unsigned char uchar
Definition: aliases.hpp:71
cl::sycl::cl_int
std::int32_t cl_int
Definition: aliases.hpp:83
cl::sycl::cl_uint
std::uint32_t cl_uint
Definition: aliases.hpp:84
cl::sycl::cl_short
std::int16_t cl_short
Definition: aliases.hpp:81
cl::sycl::ushort
unsigned short ushort
Definition: aliases.hpp:72
cl::sycl::uint
unsigned int uint
Definition: aliases.hpp:73
cl::sycl::schar
signed char schar
Definition: aliases.hpp:70