19 #include <type_traits>
22 inline namespace _V1 {
37 namespace ext::intel {
40 template <
int A = 0>
struct instance {
42 constexpr
bool operator==(
const buffer_location::instance<B> &)
const {
46 constexpr
bool operator!=(
const buffer_location::instance<B> &)
const {
49 int get_location() {
return A; }
58 namespace ext::oneapi {
70 struct __SYCL_TYPE(no_alias)
no_alias {
71 template <
bool B = true>
struct instance {
72 constexpr
bool operator==(
const no_alias::instance<B> &)
const {
75 constexpr
bool operator!=(
const no_alias::instance<B> &)
const {
83 inline constexpr property::no_alias::instance<>
no_alias;
99 typename PropertyListT>
101 template <
typename DataT,
int Dimensions, access::mode AccessMode>
103 template <
typename DataT,
int Dimensions>
112 template <
typename DataT,
int Dimensions, image_target AccessTarget>
114 template <
typename DataT,
int Dimensions, access_mode AccessMode>
118 namespace detail::acc_properties {
122 typename PropertyListT>
125 template <
typename T>
134 template <
typename DataT,
int Dimensions, image_target AccessTarget>
138 template <
typename T>
142 template <
typename T>
144 template <
typename DataT,
int Dimensions, access_mode AccessMode>
148 template <
typename DataT,
int Dimensions>
151 template <
typename T>
156 template <
typename DataT,
int Dimensions, access::mode AccessMode>
159 template <
typename T>
163 template <
typename T,
int Dimensions>
165 template <
typename T>
173 PropertyListT>> : std::true_type {};
179 template <
typename T>
191 template <
typename T>
193 : std::bool_constant<detail::acc_properties::is_accessor<T>::value ||
194 detail::acc_properties::is_host_accessor<T>::value> {};
196 template <
typename T>
198 : std::bool_constant<
199 detail::acc_properties::is_accessor_v<T> ||
200 detail::acc_properties::is_host_accessor_v<T> ||
201 detail::acc_properties::is_sycl2020_image_accessor_v<T> ||
202 detail::acc_properties::is_sycl2020_image_host_accessor_v<T>> {};
204 template <
typename T>
206 : std::bool_constant<detail::acc_properties::is_accessor<T>::value> {};
208 template <
typename T>
210 : std::bool_constant<detail::acc_properties::is_accessor<T>::value> {};
212 template <
typename T>
214 : std::bool_constant<detail::acc_properties::is_accessor<T>::value> {};
219 ext::intel::property::buffer_location::instance<I>> : std::true_type {};
222 ext::oneapi::property::no_alias::instance<>> : std::true_type {};
225 ext::oneapi::property::no_offset::instance<>> : std::true_type {};
#define __SYCL_SPECIAL_CLASS
class __SYCL_EBO __SYCL_SPECIAL_CLASS __SYCL_TYPE(accessor) accessor< DataT
Image accessors.
constexpr bool is_host_accessor_v
constexpr bool is_image_accessor_v
constexpr bool is_local_accessor_v
constexpr bool is_accessor_v
constexpr bool is_sycl2020_image_accessor_v
constexpr bool is_sycl2020_image_host_accessor_v
constexpr property::buffer_location::instance< A > buffer_location
constexpr property::no_alias::instance no_alias
constexpr property::no_offset::instance no_offset
constexpr property::noinit noinit
class __SYCL_EBO __SYCL_SPECIAL_CLASS Dimensions
constexpr property::no_init no_init
signed char __SYCL2020_DEPRECATED
class __SYCL_EBO __SYCL_SPECIAL_CLASS IsPlaceholder
class __SYCL_EBO __SYCL_SPECIAL_CLASS AccessMode
constexpr bool operator==(const no_offset::instance< B > &) const
constexpr bool operator!=(const no_offset::instance< B > &) const