diff --git a/sycl/include/CL/__spirv/spirv_ops.hpp b/sycl/include/CL/__spirv/spirv_ops.hpp index 4d349dc70ab72..e622f9d227259 100644 --- a/sycl/include/CL/__spirv/spirv_ops.hpp +++ b/sycl/include/CL/__spirv/spirv_ops.hpp @@ -8,9 +8,12 @@ #pragma once -#include -#include -#include +#include // for Scope, __ocl_event_t +#include // for __DPCPP_SYCL_EXTERNAL +#include // for __SYCL_EXPORT + +#include // for size_t +#include // for uint32_t // Convergent attribute #ifdef __SYCL_DEVICE_ONLY__ diff --git a/sycl/include/CL/__spirv/spirv_types.hpp b/sycl/include/CL/__spirv/spirv_types.hpp index 5d9da888f315e..4408b3623f257 100644 --- a/sycl/include/CL/__spirv/spirv_types.hpp +++ b/sycl/include/CL/__spirv/spirv_types.hpp @@ -8,12 +8,12 @@ #pragma once -#include -#include +#include // for SYCL_EXT_ONEAPI_MATRIX_VERSION +#include // for half -#include -#include -#include +#include // for complex +#include // for size_t +#include // for uint32_t // TODO: include the header file with SPIR-V declarations from SPIRV-Headers // project. diff --git a/sycl/include/CL/__spirv/spirv_vars.hpp b/sycl/include/CL/__spirv/spirv_vars.hpp index b236dd1aea244..ba233f0d11925 100644 --- a/sycl/include/CL/__spirv/spirv_vars.hpp +++ b/sycl/include/CL/__spirv/spirv_vars.hpp @@ -8,11 +8,13 @@ #pragma once -#include -#include - #ifdef __SYCL_DEVICE_ONLY__ +#include // for __DPCPP_SYCL_EXTERNAL + +#include // for size_t +#include // for uint8_t + #define __SPIRV_VAR_QUALIFIERS extern "C" const #if defined(__NVPTX__) || defined(__AMDGCN__) diff --git a/sycl/include/sycl/access/access.hpp b/sycl/include/sycl/access/access.hpp index 5a5054fea3fb0..bf9edc4346e2f 100644 --- a/sycl/include/sycl/access/access.hpp +++ b/sycl/include/sycl/access/access.hpp @@ -5,11 +5,15 @@ // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// + #pragma once +#include // for __SYCL2020_DEPRECATED + +#ifdef __SYCL_DEVICE_ONLY__ #include -#include -#include +#include +#endif namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/accessor.hpp b/sycl/include/sycl/accessor.hpp index 9a673a3278ec1..739b7941ab451 100644 --- a/sycl/include/sycl/accessor.hpp +++ b/sycl/include/sycl/accessor.hpp @@ -8,36 +8,56 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include // for target, mode +#include // for float4, int4 +#include // for aspect +#include // for atomic +#include // for range +#include // for accessor_iterator +#include // for code_location +#include // for __SYCL_SPECIAL... +#include // for __SYCL2020_DEP... +#include // for __SYCL_EXPORT +#include // for is_genint, Try... +#include // for associateWithH... +#include // for loop +#include // for imageReadSampl... +#include // for OwnerLessBase +#include // for PI_ERROR_INVAL... +#include // for PropWithDataKind +#include // for PropertyListBase +#include // for is_contained +#include // for const_if_const_AS +#include // for device +#include // for make_error_code +#include // for accessor_prope... +#include // for getSyclWeakObj... +#include // for id +#include // for image, image_c... +#include // for multi_ptr +#include // for local_ptr, glo... +#include // for buffer_location +#include // for buffer, buffer... +#include // for property_list +#include // for range +#include // for addressing_mode +#include // for vec + +#ifdef __SYCL_DEVICE_ONLY__ #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include +#endif + +#include // for size_t +#include // for hash +#include // for reverse_iterator +#include // for numeric_limits +#include // for shared_ptr +#include // for nullopt, optional +#include // for uint32_t +#include // for _Swallow_assign +#include // for enable_if_t +#include // for type_info +#include // for hash /// \file accessor.hpp /// The file contains implementations of accessor class. diff --git a/sycl/include/sycl/aliases.hpp b/sycl/include/sycl/aliases.hpp index f5772aad50eff..81bef6b73018a 100644 --- a/sycl/include/sycl/aliases.hpp +++ b/sycl/include/sycl/aliases.hpp @@ -8,12 +8,10 @@ #pragma once -#include -#include -#include +#include // for __SYCL2020_DEPRECATED +#include // for half -#include -#include +#include // for uint8_t, int16_t, int32_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/aspects.hpp b/sycl/include/sycl/aspects.hpp index e60e25510d79f..d0c8b6ada6bf2 100644 --- a/sycl/include/sycl/aspects.hpp +++ b/sycl/include/sycl/aspects.hpp @@ -7,7 +7,8 @@ // ===--------------------------------------------------------------------=== // #pragma once -#include +#include // for __SYCL_TYPE +#include // for __SYCL2020_DEPRECATED namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/async_handler.hpp b/sycl/include/sycl/async_handler.hpp index 39d8a443d3d30..3ec12176dbfd9 100644 --- a/sycl/include/sycl/async_handler.hpp +++ b/sycl/include/sycl/async_handler.hpp @@ -8,9 +8,7 @@ #pragma once -#include - -#include +#include // for function namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/atomic.hpp b/sycl/include/sycl/atomic.hpp index c729cae307e9c..de7febb5e876f 100644 --- a/sycl/include/sycl/atomic.hpp +++ b/sycl/include/sycl/atomic.hpp @@ -8,18 +8,20 @@ #pragma once -#include -#include -#include -#include -#include +#include // for Scope, MemorySemanticsMask +#include // for address_space, decorated +#include // for __SYCL2020_DEPRECATED +#include // for getSPIRVMemorySemanticsMask +#include // for memory_order, getStdMemoryO... +#include // for multi_ptr -#ifndef __SYCL_DEVICE_ONLY__ -#include -#else +#include // for is_same + +#ifdef __SYCL_DEVICE_ONLY__ #include +#else +#include // for atomic, memory_order #endif -#include #define __SYCL_STATIC_ASSERT_NOT_FLOAT(T) \ static_assert(!std::is_same::value, \ diff --git a/sycl/include/sycl/atomic_fence.hpp b/sycl/include/sycl/atomic_fence.hpp index 1c1d38bcb7268..f955912f8accd 100644 --- a/sycl/include/sycl/atomic_fence.hpp +++ b/sycl/include/sycl/atomic_fence.hpp @@ -8,12 +8,12 @@ #pragma once -#include -#include -#include +#include // for getStdMemoryOrder, memory_order -#ifndef __SYCL_DEVICE_ONLY__ -#include +#ifdef __SYCL_DEVICE_ONLY__ +#include +#else +#include // for atomic_thread_fence #endif namespace sycl { diff --git a/sycl/include/sycl/atomic_ref.hpp b/sycl/include/sycl/atomic_ref.hpp index 74bd32ca048c5..5c163cd5fe8e2 100644 --- a/sycl/include/sycl/atomic_ref.hpp +++ b/sycl/include/sycl/atomic_ref.hpp @@ -8,20 +8,20 @@ #pragma once -#include -#include -#include -#include -#include +#include // for address_space +#include // for bit_cast +#include // for getStdMemoryOrder, memory_order + #ifdef __SYCL_DEVICE_ONLY__ #include #include +#else +#include // for atomic #endif -#ifndef __SYCL_DEVICE_ONLY__ -#include -#endif -#include +#include // for size_t, ptrdiff_t +#include // for uintptr_t, uint32_t, uint64_t +#include // for enable_if_t, bool_constant namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/backend.hpp b/sycl/include/sycl/backend.hpp index b735634393f25..445a44f59acda 100644 --- a/sycl/include/sycl/backend.hpp +++ b/sycl/include/sycl/backend.hpp @@ -8,15 +8,33 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include +#include // for mode, placeholder +#include // for accessor +#include // for async_handler +#include // for backend +#include // for buffer_allocator +#include // for context, get_na... +#include // for InteropFeatureS... +#include // for _cl_event +#include // for __SYCL_DEPRECATED +#include // for __SYCL_EXPORT +#include // for createSyclObjFr... +#include // for pi_native_handle +#include // for device, get_native +#include // for event, get_native +#include // for make_error_code +#include // for SYCL_BACKEND_OP... +#include // for buffer +#include // for image, image_al... +#include // for kernel, get_native +#include // for kernel_bundle +#include // for bundle_state +#include // for platform, get_n... +#include // for property_list +#include // for queue, get_native + #if SYCL_BACKEND_OPENCL -#include +#include // for interop #endif #if SYCL_EXT_ONEAPI_BACKEND_CUDA #ifdef SYCL_EXT_ONEAPI_BACKEND_CUDA_EXPERIMENTAL @@ -29,20 +47,13 @@ #include #endif #if SYCL_EXT_ONEAPI_BACKEND_LEVEL_ZERO -#include +#include // for _ze_command_lis... #endif -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include + +#include // for shared_ptr +#include // for int32_t +#include // for enable_if_t +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/backend/opencl.hpp b/sycl/include/sycl/backend/opencl.hpp index 6b13bb9767dbd..9376498580fc7 100644 --- a/sycl/include/sycl/backend/opencl.hpp +++ b/sycl/include/sycl/backend/opencl.hpp @@ -1,4 +1,3 @@ - //==---------------- opencl.hpp - SYCL OpenCL backend ----------------------==// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. @@ -9,9 +8,18 @@ #pragma once -#include +#include // for backend +#include // for context +#include // for interop +#include // for __SYCL_DEPRECATED +#include // for __SYCL_EXPORT +#include // for pi_native_handle +#include // for device +#include // for platform +#include // for queue -#include +#include // for string +#include // for enable_if_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/backend_types.hpp b/sycl/include/sycl/backend_types.hpp index fdc7d7461d8f5..df27df2bd2568 100644 --- a/sycl/include/sycl/backend_types.hpp +++ b/sycl/include/sycl/backend_types.hpp @@ -8,9 +8,9 @@ #pragma once -#include +#include // for __SYCL2020_DEPRECATED -#include +#include // for operator<<, ostream namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/bit_cast.hpp b/sycl/include/sycl/bit_cast.hpp index 11d0ea7421104..e9f92b7cf6c50 100644 --- a/sycl/include/sycl/bit_cast.hpp +++ b/sycl/include/sycl/bit_cast.hpp @@ -8,20 +8,24 @@ #pragma once -#include -#include +#include // for is_trivially_copyable, enable_if_t -#include +#if __cplusplus >= 202002L +#include // defines __cpp_lib_bit_cast +#endif #if __cpp_lib_bit_cast #include +#elif !defined(__has_builtin) || !__has_builtin(__builtin_bit_cast) +#include #endif namespace sycl { inline namespace _V1 { template -#if __cpp_lib_bit_cast || __has_builtin(__builtin_bit_cast) +#if __cpp_lib_bit_cast || \ + (defined(__has_builtin) && __has_builtin(__builtin_bit_cast)) constexpr #endif std::enable_if_t(from); #else // __cpp_lib_bit_cast -#if __has_builtin(__builtin_bit_cast) +#if defined(__has_builtin) && __has_builtin(__builtin_bit_cast) return __builtin_bit_cast(To, from); -#else // __has_builtin(__builtin_bit_cast) +#else // __has_builtin(__builtin_bit_cast) static_assert(std::is_trivially_default_constructible::value, "To must be trivially default constructible"); To to; diff --git a/sycl/include/sycl/buffer.hpp b/sycl/include/sycl/buffer.hpp index d81d413eb589f..5bf6fc5a48883 100644 --- a/sycl/include/sycl/buffer.hpp +++ b/sycl/include/sycl/buffer.hpp @@ -8,18 +8,40 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include // for placeholder +#include // for backend, backe... +#include // for context +#include // for array +#include // for code_location +#include // for __SYCL2020_DEP... +#include // for __SYCL_EXPORT +#include // for buffer_impl +#include // for OwnerLessBase +#include // for pi_native_handle and PI_ERROR_INVAL +#include // for PropWithDataKind +#include // for iterator_value... +#include // for iterator_to_const_type_t +#include // for SYCLMemObjAllo... +#include // for remove_pointer_t +#include // for event +#include // for invalid_object... +#include // for accessor_prope... +#include // for id +#include // for property_list +#include // for range, rangeTo... +#include // for make_unique_ptr + +#include // for size_t, nullptr_t +#include // for function +#include // for iterator_traits +#include // for shared_ptr +#include // for uint32_t +#include // for string +#include // for enable_if_t +#include // for type_info +#include // for declval, move +#include // for hash +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/builtins.hpp b/sycl/include/sycl/builtins.hpp index 43f23204b46c4..6751ef20c902d 100644 --- a/sycl/include/sycl/builtins.hpp +++ b/sycl/include/sycl/builtins.hpp @@ -8,14 +8,21 @@ #pragma once -#include -#include -#include -#include -#include -#include - -#include +#include // for address_space, decorated +#include // for half +#include // for Boolean +#include // for __invoke_select, __in... +#include // for __SYCL_ALWAYS_INLINE +#include // for is_svgenfloat, is_sge... +#include // for is_contained, type_list +#include // for make_larger_t, marray... +#include // for half, intel +#include // for marray +#include // for address_space_cast +#include // for vec + +#include // for memcpy, size_t +#include // for enable_if_t, conditio... // TODO Decide whether to mark functions with this attribute. #define __NOEXC /*noexcept*/ diff --git a/sycl/include/sycl/context.hpp b/sycl/include/sycl/context.hpp index cff35b33ee28f..723234c6b07c7 100644 --- a/sycl/include/sycl/context.hpp +++ b/sycl/include/sycl/context.hpp @@ -8,12 +8,27 @@ #pragma once -#include -#include -#include -#include -#include -#include +#include // for async_handler +#include // for backend, backend_return_t +#include // for __SYCL2020_DEPRECATED +#include // for __SYCL_EXPORT +#include // for context_impl +#include // for is_context_info_desc +#include // for OwnerLessBase +#include // for pi_native_handle +#include // for device +#include // for platform +#include // for property_list + +#ifdef __SYCL_INTERNAL_API +#include +#endif + +#include // for size_t +#include // for shared_ptr, hash, opera... +#include // for add_pointer_t +#include // for hash +#include // for vector // 4.6.2 Context class diff --git a/sycl/include/sycl/detail/accessor_iterator.hpp b/sycl/include/sycl/detail/accessor_iterator.hpp index aec69ff3ef30a..97c5385bf3624 100644 --- a/sycl/include/sycl/detail/accessor_iterator.hpp +++ b/sycl/include/sycl/detail/accessor_iterator.hpp @@ -8,12 +8,13 @@ #pragma once -#include +#include // for mode, placeholder, target +#include // for range +#include // for id -#include -#include -#include -#include +#include // for size_t +#include // for random_access_iterator_tag +#include // for operator<<, ostream, ptrdiff_t /// \file accessor_iterator.hpp /// The file contains implementation of accessor iterator class. diff --git a/sycl/include/sycl/detail/aligned_allocator.hpp b/sycl/include/sycl/detail/aligned_allocator.hpp index 5e18b7e15d186..56da61b70132b 100644 --- a/sycl/include/sycl/detail/aligned_allocator.hpp +++ b/sycl/include/sycl/detail/aligned_allocator.hpp @@ -8,12 +8,13 @@ #pragma once -#include -#include +#include // for OSUtil -#include -#include -#include +#include // for numeric_limits +#include // for pointer_traits, allocator_traits +#include // for bad_alloc, operator new +#include // for size_t +#include // for false_type, is_empty, make_unsign... namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/array.hpp b/sycl/include/sycl/detail/array.hpp index 5a73c331aec86..2016c62d6878f 100644 --- a/sycl/include/sycl/detail/array.hpp +++ b/sycl/include/sycl/detail/array.hpp @@ -7,10 +7,13 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include -#include -#include + +#include // for __SYCL_ALWAYS_INLINE +#include // for PI_ERROR_INVALID_VALUE +#include // for invalid_parameter_error + +#include // for size_t +#include // for enable_if_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/assert_happened.hpp b/sycl/include/sycl/detail/assert_happened.hpp index 7ae7ae6b18fe4..626d2832ee148 100644 --- a/sycl/include/sycl/detail/assert_happened.hpp +++ b/sycl/include/sycl/detail/assert_happened.hpp @@ -8,9 +8,7 @@ #pragma once -#include - -#include +#include // for uint64_t, int32_t #ifdef __SYCL_DEVICE_ONLY__ // Reads Flag of AssertHappened on device diff --git a/sycl/include/sycl/detail/backend_traits_level_zero.hpp b/sycl/include/sycl/detail/backend_traits_level_zero.hpp index 44f336681aa3f..55c1ce5b69f3d 100644 --- a/sycl/include/sycl/detail/backend_traits_level_zero.hpp +++ b/sycl/include/sycl/detail/backend_traits_level_zero.hpp @@ -15,16 +15,24 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include // for backend +#include // for context +#include // for BackendI... +#include // for device +#include // for event +#include // for ownership +#include // for buffer +#include // for image +#include // for kernel +#include // for kernel_b... +#include // for bundle_s... +#include // for platform +#include // for property... +#include // for queue +#include // for range + +#include // for variant +#include // for vector typedef struct _ze_command_queue_handle_t *ze_command_queue_handle_t; typedef struct _ze_command_list_handle_t *ze_command_list_handle_t; diff --git a/sycl/include/sycl/detail/backend_traits_opencl.hpp b/sycl/include/sycl/detail/backend_traits_opencl.hpp index 6729f9c783fb1..b326d891ef9dd 100644 --- a/sycl/include/sycl/detail/backend_traits_opencl.hpp +++ b/sycl/include/sycl/detail/backend_traits_opencl.hpp @@ -15,14 +15,21 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include +#include // for backend +#include // for context +#include // for BackendInput, BackendReturn +#include // for _cl_event, cl_event, cl_de... +#include // for assertion, PiDevice, PiPro... +#include // for device +#include // for event +#include // for buffer +#include // for kernel +#include // for kernel_bundle +#include // for bundle_state +#include // for platform +#include // for queue + +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/boolean.hpp b/sycl/include/sycl/detail/boolean.hpp index 62c887ceb3b9f..f784e9cf638c6 100644 --- a/sycl/include/sycl/detail/boolean.hpp +++ b/sycl/include/sycl/detail/boolean.hpp @@ -8,11 +8,13 @@ #pragma once -#include -#include +#include // for is_sgeninteger, msbIsSet +#include // for vector_alignment -#include -#include +#include // for initializer_list +#include // for size_t +#include // for int8_t +#include // for is_same namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/builtins.hpp b/sycl/include/sycl/detail/builtins.hpp index 9bca78518229d..5cd750016404d 100644 --- a/sycl/include/sycl/detail/builtins.hpp +++ b/sycl/include/sycl/detail/builtins.hpp @@ -8,11 +8,8 @@ #pragma once -#include -#include -#include - -#include +#include // for __SYCL_ALWAYS_INLINE +#include // for convertDataToType // TODO Decide whether to mark functions with this attribute. #define __NOEXC /*noexcept*/ diff --git a/sycl/include/sycl/detail/cg.hpp b/sycl/include/sycl/detail/cg.hpp index 68197e4ce599a..6a5fd25ec6750 100644 --- a/sycl/include/sycl/detail/cg.hpp +++ b/sycl/include/sycl/detail/cg.hpp @@ -8,26 +8,24 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include +#include // for AccessorImplHost, AccessorImplPtr +#include // for ArgDesc, HostTask, HostKernelBase +#include // for code_location +#include // for context_impl +#include // for pi_mem_advice, _pi_ext_command_b... +#include // for PiImageOffset, PiImageRegion +#include // for event_impl +#include // for queue_impl +#include // for kernel_impl +#include // for kernel_bundle_impl + +#include // for assert +#include // for shared_ptr, unique_ptr +#include // for size_t +#include // for int32_t +#include // for string +#include // for move +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/cg_types.hpp b/sycl/include/sycl/detail/cg_types.hpp index 748369c8c1391..1e2723e5d57cd 100644 --- a/sycl/include/sycl/detail/cg_types.hpp +++ b/sycl/include/sycl/detail/cg_types.hpp @@ -8,15 +8,28 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include // for array +#include // for InitializedVal, NDLoop +#include // for Builder +#include // for HostProfilingInfo +#include // for id +#include // for kernel_param_kind_t +#include // for PI_ERROR_INVALID_WORK... +#include // for nd_range_error +#include // for group +#include // for h_item +#include // for id +#include // for interop_handle +#include // for item +#include // for kernel_handler +#include // for nd_item +#include // for nd_range +#include // for range, operator* + +#include // for function +#include // for size_t +#include // for enable_if_t, false_type +#include // for declval namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/common.hpp b/sycl/include/sycl/detail/common.hpp index 211ffc2863295..e94e3d390e5f7 100644 --- a/sycl/include/sycl/detail/common.hpp +++ b/sycl/include/sycl/detail/common.hpp @@ -8,14 +8,16 @@ #pragma once -#include -#include -#include // for pi_int32 - -#include -#include -#include -#include +#include // for __SYCL_ALWAYS_INLINE +#include // for __SYCL_EXPORT +#include // for pi_int32 + +#include // for array +#include // for assert +#include // for size_t +#include // for allocator, operator+ +#include // for enable_if_t +#include // for index_sequence, make_i... // Default signature enables the passing of user code location information to // public methods as a default argument. diff --git a/sycl/include/sycl/detail/defines.hpp b/sycl/include/sycl/detail/defines.hpp index 057d56f26d306..5d44727d71fb1 100644 --- a/sycl/include/sycl/detail/defines.hpp +++ b/sycl/include/sycl/detail/defines.hpp @@ -8,11 +8,10 @@ #pragma once -#include - -#include +#include // for __SYCL_ID_QUERIES_FIT_... #if __SYCL_ID_QUERIES_FIT_IN_INT__ && __has_builtin(__builtin_assume) +#include #define __SYCL_ASSUME_INT(x) __builtin_assume((x) <= INT_MAX) #else #define __SYCL_ASSUME_INT(x) diff --git a/sycl/include/sycl/detail/generic_type_lists.hpp b/sycl/include/sycl/detail/generic_type_lists.hpp index 7e54ea1544a3e..2b9ff318c738b 100644 --- a/sycl/include/sycl/detail/generic_type_lists.hpp +++ b/sycl/include/sycl/detail/generic_type_lists.hpp @@ -8,12 +8,12 @@ #pragma once -#include -#include -#include -#include +#include // for address_space +#include // for type_list, address_space_list +#include // for half -#include +#include // for byte, size_t +#include // for conditional_t, is_signed_v, is_... // Generic type name description, which serves as a description for all valid // types of parameters to kernel functions diff --git a/sycl/include/sycl/detail/generic_type_traits.hpp b/sycl/include/sycl/detail/generic_type_traits.hpp index 9e447024a179b..983e9a54c9f36 100644 --- a/sycl/include/sycl/detail/generic_type_traits.hpp +++ b/sycl/include/sycl/detail/generic_type_traits.hpp @@ -8,17 +8,21 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include +#include // for complex_double, comple... +#include // for decorated, address_space +#include // for half, cl_char, cl_double +#include // for nonconst_address_space... +#include // for marray +#include // for is_contained, find_sam... +#include // for is_gen_based_on_type_s... +#include // for BIsRepresentationT +#include // for multi_ptr, address_spa... + +#include // for complex +#include // for byte +#include // for uint8_t +#include // for numeric_limits +#include // for enable_if_t, condition... namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/group_sort_impl.hpp b/sycl/include/sycl/detail/group_sort_impl.hpp index f100403a148c9..4c2e3228492b0 100644 --- a/sycl/include/sycl/detail/group_sort_impl.hpp +++ b/sycl/include/sycl/detail/group_sort_impl.hpp @@ -10,13 +10,10 @@ #pragma once -#include -#include +#ifdef __SYCL_DEVICE_ONLY__ + #include #include -#include - -#ifdef __SYCL_DEVICE_ONLY__ namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/handler_proxy.hpp b/sycl/include/sycl/detail/handler_proxy.hpp index 2d74646315e47..f717d0e72a1bd 100644 --- a/sycl/include/sycl/detail/handler_proxy.hpp +++ b/sycl/include/sycl/detail/handler_proxy.hpp @@ -8,8 +8,8 @@ #pragma once -#include -#include +#include // for image_target, target +#include // for __SYCL_EXPORT namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/helpers.hpp b/sycl/include/sycl/detail/helpers.hpp index 6f297777152b5..7e1fcb00a8aed 100644 --- a/sycl/include/sycl/detail/helpers.hpp +++ b/sycl/include/sycl/detail/helpers.hpp @@ -8,19 +8,22 @@ #pragma once -#include +#include // for MemorySemanticsMask +#include // for fence_space +#include // for __SYCL_EXPORT +#include // for PiEvent +#include // for memory_order + +#ifdef __SYCL_DEVICE_ONLY__ #include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include +#endif + +#include // for size_t +#include // for shared_ptr +#include // for uint32_t +#include // for enable_if_t, integral_constant +#include // for forward, integer_sequence, mak... +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/host_profiling_info.hpp b/sycl/include/sycl/detail/host_profiling_info.hpp index b8257f56d9fcb..603b8345908ef 100644 --- a/sycl/include/sycl/detail/host_profiling_info.hpp +++ b/sycl/include/sycl/detail/host_profiling_info.hpp @@ -8,8 +8,9 @@ #pragma once -#include -#include +#include // for __SYCL_EXPORT + +#include // for uint64_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/image_accessor_util.hpp b/sycl/include/sycl/detail/image_accessor_util.hpp index 5ab87b4f5a3f4..6f3394e0ef01a 100644 --- a/sycl/include/sycl/detail/image_accessor_util.hpp +++ b/sycl/include/sycl/detail/image_accessor_util.hpp @@ -12,15 +12,24 @@ #pragma once #ifndef __SYCL_DEVICE_ONLY__ -#include -#include -#include -#include -#include -#include - -#include -#include + +#include // for float4, int4, uint4 +#include // for clamp, fmax, min +#include // for array +#include // for __SYCL_EXPORT +#include // for max_v, min_v, TryToGe... +#include // for PI_ERROR_INVALID_VALUE +#include // for is_contained, type_list +#include // for invalid_parameter_error +#include // for id +#include // for image_channel_type +#include // for range +#include // for addressing_mode, coor... +#include // for vec, operator*, round... + +#include // for int32_t, uint16_t +#include // for size_t +#include // for enable_if_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/impl_utils.hpp b/sycl/include/sycl/detail/impl_utils.hpp index ec7d049329b57..17da417843541 100644 --- a/sycl/include/sycl/detail/impl_utils.hpp +++ b/sycl/include/sycl/detail/impl_utils.hpp @@ -8,9 +8,8 @@ #pragma once -#include - -#include +#include // for assert +#include // for add_pointer_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/info_desc_helpers.hpp b/sycl/include/sycl/detail/info_desc_helpers.hpp index 331680f0acf56..6706a3c02487f 100644 --- a/sycl/include/sycl/detail/info_desc_helpers.hpp +++ b/sycl/include/sycl/detail/info_desc_helpers.hpp @@ -8,8 +8,14 @@ #pragma once +#include // for pi_device_info + +#include // for true_type + +// FIXME: .def files included to this file use all sorts of SYCL objects like +// id, range, traits, etc. We have to include some headers before including .def +// files. #include -#include #include #include diff --git a/sycl/include/sycl/detail/iostream_proxy.hpp b/sycl/include/sycl/detail/iostream_proxy.hpp index 1d8251f226e08..76f432d687d13 100644 --- a/sycl/include/sycl/detail/iostream_proxy.hpp +++ b/sycl/include/sycl/detail/iostream_proxy.hpp @@ -8,8 +8,7 @@ #pragma once -#include -#include +#include // for ostream, istream // Hotfix to account for the different namespaces in libstdc++ and libc++ #ifdef _LIBCPP_BEGIN_NAMESPACE_STD diff --git a/sycl/include/sycl/detail/item_base.hpp b/sycl/include/sycl/detail/item_base.hpp index 432cde97ae65e..71377833651cb 100644 --- a/sycl/include/sycl/detail/item_base.hpp +++ b/sycl/include/sycl/detail/item_base.hpp @@ -8,8 +8,10 @@ #pragma once -#include -#include +#include // for id +#include // for range + +#include // for size_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/kernel_desc.hpp b/sycl/include/sycl/detail/kernel_desc.hpp index 40122cb7f481f..14f90c4dacf76 100644 --- a/sycl/include/sycl/detail/kernel_desc.hpp +++ b/sycl/include/sycl/detail/kernel_desc.hpp @@ -8,11 +8,12 @@ #pragma once -// This header file must not include any standard C++ header files. - -#include +// FIXME: include export.hpp because integration header emitted by the compiler +// uses the macro defined in this header, but it doesn't explicitly include it. #include +// This header file must not include any standard C++ header files. + namespace sycl { inline namespace _V1 { namespace detail { diff --git a/sycl/include/sycl/detail/os_util.hpp b/sycl/include/sycl/detail/os_util.hpp index d2f8d4aa0f792..4ab08bb284937 100644 --- a/sycl/include/sycl/detail/os_util.hpp +++ b/sycl/include/sycl/detail/os_util.hpp @@ -10,14 +10,11 @@ #pragma once -#include -#include +#include // for __SYCL_EXPORT -#include -#include -#include -#include -#include +#include // for size_t +#include // for string +#include // for stat #ifdef _WIN32 #define __SYCL_RT_OS_WINDOWS diff --git a/sycl/include/sycl/detail/owner_less_base.hpp b/sycl/include/sycl/detail/owner_less_base.hpp index 788245ddd53f3..dfce9a2ed74e2 100644 --- a/sycl/include/sycl/detail/owner_less_base.hpp +++ b/sycl/include/sycl/detail/owner_less_base.hpp @@ -8,9 +8,8 @@ #pragma once -#include -#include -#include +#include // for getSyclObjImpl +#include // for getSyclWeakObjImpl namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/pi.hpp b/sycl/include/sycl/detail/pi.hpp index 56b2e9570f8cd..c4ddfe9fd1b44 100644 --- a/sycl/include/sycl/detail/pi.hpp +++ b/sycl/include/sycl/detail/pi.hpp @@ -13,17 +13,18 @@ #pragma once -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include +#include // for backend +#include // for __SYCL_EXPORT +#include // for __SYCL_RT_OS_LINUX +#include // for piContextCreate, piContextGetInfo + +#include // for uint64_t, uint32_t +#include // for shared_ptr +#include // for operator<<, basic_ostream, string... +#include // for size_t +#include // for char_traits, string +#include // for false_type, true_type +#include // for vector #ifdef XPTI_ENABLE_INSTRUMENTATION // Forward declarations diff --git a/sycl/include/sycl/detail/property_helper.hpp b/sycl/include/sycl/detail/property_helper.hpp index 3dfadf746d272..a76efb84304fc 100644 --- a/sycl/include/sycl/detail/property_helper.hpp +++ b/sycl/include/sycl/detail/property_helper.hpp @@ -8,8 +8,6 @@ #pragma once -#include - namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/property_list_base.hpp b/sycl/include/sycl/detail/property_list_base.hpp index 5ff5899ee1af6..042e3044020df 100644 --- a/sycl/include/sycl/detail/property_list_base.hpp +++ b/sycl/include/sycl/detail/property_list_base.hpp @@ -8,14 +8,16 @@ #pragma once -#include -#include -#include - -#include -#include -#include -#include +#include // for PI_ERROR_INVALID_VALUE +#include // for DataLessPropKind, Propert... +#include // for invalid_object_error + +#include // for iter_swap +#include // for bitset +#include // for shared_ptr, __shared_ptr_... +#include // for enable_if_t +#include // for move +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/reduction_forward.hpp b/sycl/include/sycl/detail/reduction_forward.hpp index 730ed63f76753..40c6968bfee86 100644 --- a/sycl/include/sycl/detail/reduction_forward.hpp +++ b/sycl/include/sycl/detail/reduction_forward.hpp @@ -8,12 +8,18 @@ #pragma once +#include // for range +#include // for id +#include // for getDelinearizedItem, item +#include // for nd_range +#include // for range + +#include // for size_t + // To be included in . Note that reductions implementation // need complete sycl::handler type so we cannot include whole // there. -#include - namespace sycl { inline namespace _V1 { namespace detail { diff --git a/sycl/include/sycl/detail/service_kernel_names.hpp b/sycl/include/sycl/detail/service_kernel_names.hpp deleted file mode 100644 index b1ed3289310bd..0000000000000 --- a/sycl/include/sycl/detail/service_kernel_names.hpp +++ /dev/null @@ -1,21 +0,0 @@ -//==-------- service_kernels.hpp - SYCL service kernel name types ----------==// -// -// 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 -// -//===----------------------------------------------------------------------===// - -#pragma once - -namespace sycl { -inline namespace _V1 { -namespace detail { -namespace __sycl_service_kernel__ { - -class AssertInfoCopier; - -} // namespace __sycl_service_kernel__ -} // namespace detail -} // namespace _V1 -} // namespace sycl diff --git a/sycl/include/sycl/detail/spirv.hpp b/sycl/include/sycl/detail/spirv.hpp index d793d826f2b9b..f21e01ebeb7b0 100644 --- a/sycl/include/sycl/detail/spirv.hpp +++ b/sycl/include/sycl/detail/spirv.hpp @@ -7,19 +7,13 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #ifdef __SYCL_DEVICE_ONLY__ + +#include // for IdToMaskPosition + +#include // for std::memcpy + namespace sycl { inline namespace _V1 { struct sub_group; diff --git a/sycl/include/sycl/detail/stl_type_traits.hpp b/sycl/include/sycl/detail/stl_type_traits.hpp index bc5f428cf6176..000a04d113c70 100644 --- a/sycl/include/sycl/detail/stl_type_traits.hpp +++ b/sycl/include/sycl/detail/stl_type_traits.hpp @@ -8,10 +8,9 @@ #pragma once -#include - -#include -#include +#include // for iterator_traits +#include // for is_const, remove_pointer_t, void_t +#include // for declval namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/sycl_fe_intrins.hpp b/sycl/include/sycl/detail/sycl_fe_intrins.hpp deleted file mode 100644 index 64147d4c8eb14..0000000000000 --- a/sycl/include/sycl/detail/sycl_fe_intrins.hpp +++ /dev/null @@ -1,37 +0,0 @@ -//==------ sycl_fe_intrins.hpp --- SYCL Device Compiler's FE intrinsics ----==// -// -// 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 -// -//===----------------------------------------------------------------------===// -// C++ intrinsics recognized by the SYCL device compiler frontend -//===----------------------------------------------------------------------===// - -#pragma once - -#include -#include - -#ifdef __SYCL_DEVICE_ONLY__ - -// Get the value of the specialization constant with given symbolic ID. -// `SymbolicID` is a unique string ID of a specialization constant. -// `DefaultValue` contains a pointer to a global variable with the initializer, -// which should be used as the default value of the specialization constants. -// `RTBuffer` is a pointer to a runtime buffer, which holds values of all -// specialization constant and should be used if native specialization constants -// are not available. -template -__DPCPP_SYCL_EXTERNAL T __sycl_getScalar2020SpecConstantValue( - const char *SymbolicID, const void *DefaultValue, const void *RTBuffer); - -template -__DPCPP_SYCL_EXTERNAL T __sycl_getComposite2020SpecConstantValue( - const char *SymbolicID, const void *DefaultValue, const void *RTBuffer); - -// Request a fixed-size allocation in local address space at kernel scope. -extern "C" __DPCPP_SYCL_EXTERNAL __attribute__((opencl_local)) std::uint8_t * -__sycl_allocateLocalMemory(std::size_t Size, std::size_t Alignment); - -#endif diff --git a/sycl/include/sycl/detail/sycl_mem_obj_allocator.hpp b/sycl/include/sycl/detail/sycl_mem_obj_allocator.hpp index 85bc98abd71f9..a825c61cd52a6 100644 --- a/sycl/include/sycl/detail/sycl_mem_obj_allocator.hpp +++ b/sycl/include/sycl/detail/sycl_mem_obj_allocator.hpp @@ -8,7 +8,11 @@ #pragma once -#include +#include // for aligned_allocator + +#include // for max +#include // for size_t +#include // for enable_if_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/tuple.hpp b/sycl/include/sycl/detail/tuple.hpp index 1447d8489cd53..6f49005e2bcb9 100644 --- a/sycl/include/sycl/detail/tuple.hpp +++ b/sycl/include/sycl/detail/tuple.hpp @@ -8,12 +8,11 @@ #pragma once -#include - -#include -#include -#include -#include +#include // for tuple_element +#include // for size_t +#include // for tuple +#include // for make_index_sequence, index_sequence +#include // for tuple namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/type_list.hpp b/sycl/include/sycl/detail/type_list.hpp index 154c5460fa876..94e4ffd6dcca6 100644 --- a/sycl/include/sycl/detail/type_list.hpp +++ b/sycl/include/sycl/detail/type_list.hpp @@ -8,8 +8,9 @@ #pragma once -#include -#include +#include // for address_space + +#include // for bool_constant, conditional_t, fals... namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/type_traits.hpp b/sycl/include/sycl/detail/type_traits.hpp index 36ad45752c962..fe0a46497e69b 100644 --- a/sycl/include/sycl/detail/type_traits.hpp +++ b/sycl/include/sycl/detail/type_traits.hpp @@ -8,15 +8,15 @@ #pragma once -#include -#include -#include -#include -#include - -#include -#include -#include +#include // for decorated, address_space +#include // for vec, marray, integer_list +#include // for is_contained, find_twi... +#include // for half + +#include // for array +#include // for size_t +#include // for tuple +#include // for true_type, false_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/detail/vector_traits.hpp b/sycl/include/sycl/detail/vector_traits.hpp index e84e00e4786f1..d34ec4dc247a5 100644 --- a/sycl/include/sycl/detail/vector_traits.hpp +++ b/sycl/include/sycl/detail/vector_traits.hpp @@ -8,9 +8,7 @@ #pragma once -#include - -#include +#include // for integral_constant, conditional_t, remove_cv_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/device.hpp b/sycl/include/sycl/device.hpp index d32b916645a07..03b5a8f10ca33 100644 --- a/sycl/include/sycl/device.hpp +++ b/sycl/include/sycl/device.hpp @@ -8,20 +8,24 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include +#include // for aspect +#include // for backend +#include // for __SY... +#include // for __SY... +#include // for is_d... +#include // for Owne... +#include // for pi_n... +#include // for Enab... +#include // for arch... +#include // for part... +#include // for plat... + +#include // for size_t +#include // for shar... +#include // for string +#include // for add_... +#include // for hash +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/device_aspect_traits.hpp b/sycl/include/sycl/device_aspect_traits.hpp index 1ce7b4231b126..21226ab5b68b2 100644 --- a/sycl/include/sycl/device_aspect_traits.hpp +++ b/sycl/include/sycl/device_aspect_traits.hpp @@ -6,10 +6,12 @@ // //===----------------------------------------------------------------------===// -#include "device_aspect_macros.hpp" - #pragma once +#include "device_aspect_macros.hpp" // for aspect + +#include // for bool_constant + // This macro creates an alias from an aspect to another. To avoid // redeclarations, we need to define it empty for this file, otherwise we would // have multiple declarations of `any_device_has` and `all_devices_have`, one diff --git a/sycl/include/sycl/device_selector.hpp b/sycl/include/sycl/device_selector.hpp index af6593a973a5d..49cb513b4a4fa 100644 --- a/sycl/include/sycl/device_selector.hpp +++ b/sycl/include/sycl/device_selector.hpp @@ -8,11 +8,12 @@ #pragma once -#include -#include +#include // for __SYCL2020_DEPRECATED +#include // for __SYCL_EXPORT -#include -#include +#include // for function +#include // for enable_if_t +#include // for vector // 4.6.1 Device selection class diff --git a/sycl/include/sycl/event.hpp b/sycl/include/sycl/event.hpp index 99c6b44ae8bc2..5fd596cbc452b 100644 --- a/sycl/include/sycl/event.hpp +++ b/sycl/include/sycl/event.hpp @@ -8,16 +8,21 @@ #pragma once -#include +#include // for backend, backend_return_t +#include // for __SYCL2020_DEPRECATED +#include // for __SYCL_EXPORT +#include // for is_event_info_desc, is_... +#include // for OwnerLessBase +#include // for pi_native_handle + +#ifdef __SYCL_INTERNAL_API #include -#include -#include -#include -#include -#include -#include - -#include +#endif + +#include // for size_t +#include // for shared_ptr, hash +#include // for hash +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/exception.hpp b/sycl/include/sycl/exception.hpp index 0805636228da1..659d7cee4f952 100644 --- a/sycl/include/sycl/exception.hpp +++ b/sycl/include/sycl/exception.hpp @@ -10,13 +10,18 @@ // 4.9.2 Exception Class Interface -#include -#include -#include -#include -#include - -#include +#include // for backend +#include // for cl_int +#include // for codeToString +#include // for __SYCL2020_DEPRECATED +#include // for __SYCL_EXPORT +#include // for pi_int32 + +#include // for exception +#include // for allocator, shared_ptr, make... +#include // for string, basic_string, opera... +#include // for error_code, error_category +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/exception_list.hpp b/sycl/include/sycl/exception_list.hpp index 50913a7f32206..2a0202fa020a9 100644 --- a/sycl/include/sycl/exception_list.hpp +++ b/sycl/include/sycl/exception_list.hpp @@ -10,14 +10,13 @@ // 4.9.2 Exception Class Interface -#include -#include -#include -#include +#include // for __SYCL_EXPORT +#include // for cerr -#include -#include -#include +#include // for size_t +#include // for exception_ptr, exception +#include // for operator<<, basic_ostream +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/codeplay/experimental/fusion_properties.hpp b/sycl/include/sycl/ext/codeplay/experimental/fusion_properties.hpp index 3216584751cb0..a49c700d9023d 100644 --- a/sycl/include/sycl/ext/codeplay/experimental/fusion_properties.hpp +++ b/sycl/include/sycl/ext/codeplay/experimental/fusion_properties.hpp @@ -8,9 +8,12 @@ #pragma once -#include -#include -#include +#include // for mode, placeholder +#include // for DataLessPropKind, Dat... +#include // for is_property, is_prope... +#include // for queue + +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/codeplay/experimental/fusion_wrapper.hpp b/sycl/include/sycl/ext/codeplay/experimental/fusion_wrapper.hpp index f38a4f3ec548b..ab31be2f71cbf 100644 --- a/sycl/include/sycl/ext/codeplay/experimental/fusion_wrapper.hpp +++ b/sycl/include/sycl/ext/codeplay/experimental/fusion_wrapper.hpp @@ -8,7 +8,12 @@ #pragma once -#include +#include // for __SYCL_EXPORT +#include // for event +#include // for property_list +#include // for queue + +#include // for shared_ptr namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/intel/experimental/fpga_annotated_properties.hpp b/sycl/include/sycl/ext/intel/experimental/fpga_annotated_properties.hpp index 1eb0ce06a1cbd..26020367ea0ea 100644 --- a/sycl/include/sycl/ext/intel/experimental/fpga_annotated_properties.hpp +++ b/sycl/include/sycl/ext/intel/experimental/fpga_annotated_properties.hpp @@ -10,6 +10,14 @@ #pragma once #include +#include +#include +#include + +#include +#include +#include +#include namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/intel/experimental/fpga_utils.hpp b/sycl/include/sycl/ext/intel/experimental/fpga_utils.hpp index 7960447e81e82..549766b6e3f26 100644 --- a/sycl/include/sycl/ext/intel/experimental/fpga_utils.hpp +++ b/sycl/include/sycl/ext/intel/experimental/fpga_utils.hpp @@ -8,11 +8,10 @@ #pragma once -#include -#include -#include -#include -#include +#include // for latency_co... + +#include // for int32_t +#include // for conditional_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/intel/experimental/kernel_execution_properties.hpp b/sycl/include/sycl/ext/intel/experimental/kernel_execution_properties.hpp index b4aa5dac13602..42e8bdc88c035 100644 --- a/sycl/include/sycl/ext/intel/experimental/kernel_execution_properties.hpp +++ b/sycl/include/sycl/ext/intel/experimental/kernel_execution_properties.hpp @@ -8,7 +8,10 @@ #pragma once -#include +#include // for PropKind, IsRunti... + +#include // for uint16_t +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/intel/experimental/pipe_properties.hpp b/sycl/include/sycl/ext/intel/experimental/pipe_properties.hpp index d38453ab472e9..95685881da18c 100644 --- a/sycl/include/sycl/ext/intel/experimental/pipe_properties.hpp +++ b/sycl/include/sycl/ext/intel/experimental/pipe_properties.hpp @@ -9,8 +9,11 @@ #pragma once -#include -#include +#include // for PropKind +#include // for property_value + +#include // for uint16_t +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/intel/experimental/pipes.hpp b/sycl/include/sycl/ext/intel/experimental/pipes.hpp index 0bbea2ad3cec0..fa2378bded80e 100644 --- a/sycl/include/sycl/ext/intel/experimental/pipes.hpp +++ b/sycl/include/sycl/ext/intel/experimental/pipes.hpp @@ -8,22 +8,31 @@ #pragma once -#include "fpga_utils.hpp" -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include // for __SYCL_EX... +#include // for device +#include // for event +#include // for make_erro... +#include // for protocol_... +#include // for ValueOrDe... +#include // for handler +#include // for event_com... +#include // for memory_order +#include // for queue + +#ifdef __SYCL_DEVICE_ONLY__ +#include +#include +#endif #ifdef XPTI_ENABLE_INSTRUMENTATION #include #include #endif +#include // for int32_t +#include // for string +#include // for _Swallow_... + namespace sycl { inline namespace _V1 { namespace ext { diff --git a/sycl/include/sycl/ext/intel/experimental/usm_properties.hpp b/sycl/include/sycl/ext/intel/experimental/usm_properties.hpp index a1d48deea3e5f..3c31b5d80278a 100644 --- a/sycl/include/sycl/ext/intel/experimental/usm_properties.hpp +++ b/sycl/include/sycl/ext/intel/experimental/usm_properties.hpp @@ -8,9 +8,11 @@ #pragma once -#include -#include -#include +#include // for PropWithDataKind, Dat... +#include // for is_property + +#include // for uint64_t +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/intel/pipes.hpp b/sycl/include/sycl/ext/intel/pipes.hpp index 1206e9d7d8920..4eb6120e8569e 100644 --- a/sycl/include/sycl/ext/intel/pipes.hpp +++ b/sycl/include/sycl/ext/intel/pipes.hpp @@ -8,9 +8,10 @@ #pragma once -#include -#include -#include +#include // for make_error_code, errc, exception + +#include // for size_t +#include // for int32_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/intel/usm_pointers.hpp b/sycl/include/sycl/ext/intel/usm_pointers.hpp index a7113f7b2a5ca..fc43845648389 100644 --- a/sycl/include/sycl/ext/intel/usm_pointers.hpp +++ b/sycl/include/sycl/ext/intel/usm_pointers.hpp @@ -7,7 +7,8 @@ //===----------------------------------------------------------------------===// #pragma once -#include + +#include // for decorated, address_space namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/accessor_property_list.hpp b/sycl/include/sycl/ext/oneapi/accessor_property_list.hpp index d7e84171df07c..808e766bd4fe5 100644 --- a/sycl/include/sycl/ext/oneapi/accessor_property_list.hpp +++ b/sycl/include/sycl/ext/oneapi/accessor_property_list.hpp @@ -8,10 +8,18 @@ #pragma once -#include -#include -#include -#include +#include // for mode, placeholder, target +#include // for __SYCL_TYPE +#include // for PI_ERROR_INVALID_VALUE +#include // for DataLessPropKind, Prop... +#include // for PropertyListBase +#include // for invalid_object_error +#include // for property_list + +#include // for bitset +#include // for shared_ptr +#include // for conditional_t, enable_... +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/backend/level_zero.hpp b/sycl/include/sycl/ext/oneapi/backend/level_zero.hpp index c8b085fa49740..43be1a9310adb 100644 --- a/sycl/include/sycl/ext/oneapi/backend/level_zero.hpp +++ b/sycl/include/sycl/ext/oneapi/backend/level_zero.hpp @@ -8,9 +8,36 @@ #pragma once -#include +#include // for async_han... +#include // for backend_i... +#include // for backend +#include // for buffer_al... +#include // for context +#include // for interop +#include // for ze_comman... +#include // for __SYCL_DE... +#include // for __SYCL_EX... +#include // for createSyc... +#include // for pi_native... +#include // for cast +#include // for device +#include // for event +#include // for buffer +#include // for ownership +#include // for image +#include // for kernel +#include // for kernel_bu... +#include // for bundle_state +#include // for platform +#include // for image +#include // for property_... +#include // for queue -#include +#include // for shared_ptr +#include // for int32_t +#include // for enable_if_t +#include // for get_if +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/backend/level_zero_ownership.hpp b/sycl/include/sycl/ext/oneapi/backend/level_zero_ownership.hpp index 7c18a6e4d669b..67bdd88771d6e 100644 --- a/sycl/include/sycl/ext/oneapi/backend/level_zero_ownership.hpp +++ b/sycl/include/sycl/ext/oneapi/backend/level_zero_ownership.hpp @@ -8,8 +8,6 @@ #pragma once -#include - namespace sycl { inline namespace _V1 { namespace ext::oneapi::level_zero { diff --git a/sycl/include/sycl/ext/oneapi/bfloat16.hpp b/sycl/include/sycl/ext/oneapi/bfloat16.hpp index 13d077b0f1d65..46ffb15900882 100644 --- a/sycl/include/sycl/ext/oneapi/bfloat16.hpp +++ b/sycl/include/sycl/ext/oneapi/bfloat16.hpp @@ -8,9 +8,12 @@ #pragma once -#include -#include -#include +#include // for half +#include // for isnan +#include // for __DPCPP_SYCL_EXTERNAL +#include // for half + +#include // for uint16_t, uint32_t extern "C" __DPCPP_SYCL_EXTERNAL uint16_t __devicelib_ConvertFToBF16INTEL(const float &) noexcept; diff --git a/sycl/include/sycl/ext/oneapi/bindless_images.hpp b/sycl/include/sycl/ext/oneapi/bindless_images.hpp index 9b26c462d4253..af30649c578d4 100644 --- a/sycl/include/sycl/ext/oneapi/bindless_images.hpp +++ b/sycl/include/sycl/ext/oneapi/bindless_images.hpp @@ -8,12 +8,21 @@ #pragma once -#include - -#include -#include -#include -#include +#include // for context +#include // for __SYCL_EXPORT +#include // for pi_uint64 +#include // for device +#include // for image_desc... +#include // for interop_me... +#include // for image_mem_... +#include // for bindless_i... +#include // for image_chan... +#include // for queue +#include // for range + +#include // for assert +#include // for size_t +#include // for is_scalar namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/bindless_images_descriptor.hpp b/sycl/include/sycl/ext/oneapi/bindless_images_descriptor.hpp index 5576c41beeb82..dd8751992bd7c 100644 --- a/sycl/include/sycl/ext/oneapi/bindless_images_descriptor.hpp +++ b/sycl/include/sycl/ext/oneapi/bindless_images_descriptor.hpp @@ -8,7 +8,14 @@ #pragma once -#include +#include // for array +#include // for errc, exception +#include // for image_channel_order, image_channel_type +#include // for range + +#include // for max +#include // for size_t +#include // for error_code namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/bindless_images_interop.hpp b/sycl/include/sycl/ext/oneapi/bindless_images_interop.hpp index 3982a55554230..822340f264cf8 100644 --- a/sycl/include/sycl/ext/oneapi/bindless_images_interop.hpp +++ b/sycl/include/sycl/ext/oneapi/bindless_images_interop.hpp @@ -8,6 +8,10 @@ #pragma once +#include // for pi_uint64 + +#include // for size_t + namespace sycl { inline namespace _V1 { namespace ext::oneapi::experimental { diff --git a/sycl/include/sycl/ext/oneapi/bindless_images_memory.hpp b/sycl/include/sycl/ext/oneapi/bindless_images_memory.hpp index 941b0315342a1..8b8b430a7960a 100644 --- a/sycl/include/sycl/ext/oneapi/bindless_images_memory.hpp +++ b/sycl/include/sycl/ext/oneapi/bindless_images_memory.hpp @@ -8,10 +8,16 @@ #pragma once -#include -#include -#include -#include +#include // for context +#include // for __SYCL_EXPORT +#include // for device +#include // for image_desc... +#include // for image_chan... +#include // for range + +#include // for size_t +#include // for shared_ptr +#include // for hash namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/device_global/device_global.hpp b/sycl/include/sycl/ext/oneapi/device_global/device_global.hpp index 7a2d834188886..0587d245ad910 100644 --- a/sycl/include/sycl/ext/oneapi/device_global/device_global.hpp +++ b/sycl/include/sycl/ext/oneapi/device_global/device_global.hpp @@ -8,14 +8,16 @@ #pragma once -#include -#include - -#include -#include -#include -#include -#include +#include // for address_space +#include // for make_error_code +#include // for device_image... +#include // for properties_t +#include // for multi_ptr +#include // for decorated_gl... + +#include // for ptrdiff_t +#include // for enable_if_t +#include // for declval #ifdef __SYCL_DEVICE_ONLY__ #define __SYCL_HOST_NOT_SUPPORTED(Op) diff --git a/sycl/include/sycl/ext/oneapi/device_global/properties.hpp b/sycl/include/sycl/ext/oneapi/device_global/properties.hpp index 99817c910a6d6..05e8c5474bcc0 100644 --- a/sycl/include/sycl/ext/oneapi/device_global/properties.hpp +++ b/sycl/include/sycl/ext/oneapi/device_global/properties.hpp @@ -8,8 +8,12 @@ #pragma once -#include -#include +#include // for PropKind +#include // for property_value + +#include // for uint16_t +#include // for nullptr_t +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/annotated_arg/annotated_arg.hpp b/sycl/include/sycl/ext/oneapi/experimental/annotated_arg/annotated_arg.hpp index e9e15da78caf2..bbcd06a8f74ba 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/annotated_arg/annotated_arg.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/annotated_arg/annotated_arg.hpp @@ -8,15 +8,16 @@ #pragma once -#include -#include - -#include -#include +#include #include #include #include +#include +#include +#include +#include + namespace sycl { inline namespace _V1 { namespace ext { diff --git a/sycl/include/sycl/ext/oneapi/experimental/annotated_ptr/annotated_ptr.hpp b/sycl/include/sycl/ext/oneapi/experimental/annotated_ptr/annotated_ptr.hpp index 30dc79c174801..6106a361fcb54 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/annotated_ptr/annotated_ptr.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/annotated_ptr/annotated_ptr.hpp @@ -8,14 +8,19 @@ #pragma once -#include -#include - -#include -#include +#include #include #include #include +#include +#include + +#include +#include +#include +#include +#include +#include namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/ballot_group.hpp b/sycl/include/sycl/ext/oneapi/experimental/ballot_group.hpp index 335da7151a00c..f20f2f12fb8b9 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/ballot_group.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/ballot_group.hpp @@ -7,8 +7,18 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include + +#include // for PI_ERROR_INVALID_DEVICE +#include // for is_group, is_user_cons... +#include // for runtime_error +#include // for GetMask +#include // for sub_group_mask +#include // for id +#include // for memory_scope +#include // for range +#include // for sub_group + +#include // for enable_if_t, decay_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/bfloat16_math.hpp b/sycl/include/sycl/ext/oneapi/experimental/bfloat16_math.hpp index 838ad3d500490..6a9a1acca1f92 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/bfloat16_math.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/bfloat16_math.hpp @@ -8,14 +8,13 @@ #pragma once -#include -#include -#include -#include +#include // for ceil, cos, exp, exp10, exp2 +#include // for bfloat16, bfloat16ToBits +#include // for marray -#include -#include -#include +#include // for size_t, memcpy +#include // for uint32_t +#include // for enable_if_t, is_same namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/builtins.hpp b/sycl/include/sycl/ext/oneapi/experimental/builtins.hpp index 0941a46459653..13b90e3f5bb42 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/builtins.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/builtins.hpp @@ -8,14 +8,17 @@ #pragma once -#include -#include -#include -#include -#include - -#include -#include +#include // for half +#include // for to_vec2 +#include // for __invoke_exp2, __invo... +#include // for __SYCL_ALWAYS_INLINE +#include // for is_svgenfloath, is_sv... +#include // for marray +#include // for vec + +#include // for memcpy, size_t +#include // for printf +#include // for enable_if_t // TODO Decide whether to mark functions with this attribute. #define __NOEXC /*noexcept*/ diff --git a/sycl/include/sycl/ext/oneapi/experimental/common_annotated_properties/properties.hpp b/sycl/include/sycl/ext/oneapi/experimental/common_annotated_properties/properties.hpp index 69cfa8c9e16dc..eaf5414490938 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/common_annotated_properties/properties.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/common_annotated_properties/properties.hpp @@ -9,9 +9,10 @@ #pragma once -#include -#include -#include +#include // for properties_t + +#include // for false_type, con... +#include // for declval namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/cuda/barrier.hpp b/sycl/include/sycl/ext/oneapi/experimental/cuda/barrier.hpp index 55c37889a8991..4694ac663f128 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/cuda/barrier.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/cuda/barrier.hpp @@ -8,10 +8,12 @@ #pragma once -#define SYCL_EXT_ONEAPI_CUDA_ASYNC_BARRIER 1 +#include // for PI_ERROR_INVALID_DEVICE +#include // for runtime_error + +#include // for int32_t, int64_t, uint32_t, uint64_t -#include -#include +#define SYCL_EXT_ONEAPI_CUDA_ASYNC_BARRIER 1 namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/cuda/non_uniform_algorithms.hpp b/sycl/include/sycl/ext/oneapi/experimental/cuda/non_uniform_algorithms.hpp index 21111098734db..3052bd9e2887d 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/cuda/non_uniform_algorithms.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/cuda/non_uniform_algorithms.hpp @@ -7,12 +7,12 @@ //===----------------------------------------------------------------------===// #pragma once -#include + +#if defined(__SYCL_DEVICE_ONLY__) && defined(__NVPTX__) namespace sycl { inline namespace _V1 { namespace detail { -#if defined(__SYCL_DEVICE_ONLY__) && defined(__NVPTX__) template using IsRedux = std::bool_constant< @@ -331,7 +331,8 @@ masked_scan_cuda_shfls(Group g, T x, BinaryOperation binary_op, return x; } -#endif // defined(__SYCL_DEVICE_ONLY__) && defined(__NVPTX__) } // namespace detail } // namespace _V1 } // namespace sycl + +#endif // defined(__SYCL_DEVICE_ONLY__) && defined(__NVPTX__) diff --git a/sycl/include/sycl/ext/oneapi/experimental/device_architecture.hpp b/sycl/include/sycl/ext/oneapi/experimental/device_architecture.hpp index 6f6eae3477f52..92fda8191124b 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/device_architecture.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/device_architecture.hpp @@ -8,8 +8,6 @@ #pragma once -#include - namespace sycl { inline namespace _V1 { namespace ext::oneapi::experimental { diff --git a/sycl/include/sycl/ext/oneapi/experimental/fixed_size_group.hpp b/sycl/include/sycl/ext/oneapi/experimental/fixed_size_group.hpp index a03d25886b34e..2fbbda9b45669 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/fixed_size_group.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/fixed_size_group.hpp @@ -8,7 +8,17 @@ #pragma once -#include +#include // for PI_ERROR_INVALID_DEVICE +#include // for is_fixed_size_group, is_group +#include // for runtime_error +#include // for sub_group_mask +#include // for id +#include // for memory_scope +#include // for range +#include // for sub_group + +#include // for size_t +#include // for enable_if_t, true_type, dec... namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/graph.hpp b/sycl/include/sycl/ext/oneapi/experimental/graph.hpp index be5210922fb08..80837a48f07d7 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/graph.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/graph.hpp @@ -8,14 +8,17 @@ #pragma once -#include -#include -#include -#include - -#include -#include -#include +#include // for context +#include // for __SYCL_EXPORT +#include // for DataLessPropKind, PropWith... +#include // for device +#include // for is_property, is_property_of +#include // for property_list + +#include // for function +#include // for shared_ptr +#include // for true_type +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/group_helpers_sorters.hpp b/sycl/include/sycl/ext/oneapi/experimental/group_helpers_sorters.hpp index e55ccac0bc808..004ff4b77a9ac 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/group_helpers_sorters.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/group_helpers_sorters.hpp @@ -9,9 +9,27 @@ #pragma once #if (!defined(_HAS_STD_BYTE) || _HAS_STD_BYTE != 0) + +#include // for half +#include // for PI_ERROR_INVALID_DEVICE +#include // for sycl_category, exception +#include // for bfloat16 +#include // for memory_scope +#include // for range +#include // for span + +#ifdef __SYCL_DEVICE_ONLY__ #include -#include -#include +#endif + +#include // for bitset +#include // for size_t, byte +#include // for less, greater +#include // for CHAR_BIT +#include // for numeric_limits +#include // for uint32_t +#include // for error_code +#include // for is_same, is_arithmetic namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/group_sort.hpp b/sycl/include/sycl/ext/oneapi/experimental/group_sort.hpp index 9aa8c3bec9d3b..3056e2c955a00 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/group_sort.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/group_sort.hpp @@ -9,12 +9,17 @@ #pragma once #if (!defined(_HAS_STD_BYTE) || _HAS_STD_BYTE != 0) -#include -#include -#include -#include -#include "group_helpers_sorters.hpp" +#include "group_helpers_sorters.hpp" // for default_sorter, group_with_sc... + +#include // for PI_ERROR_INVALID_DEVICE +#include // for is_generic_group +#include // for sycl_category, exception + +#include // for size_t +#include // for error_code +#include // for enable_if_t, decay_t, false_type +#include // for declval namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/non_uniform_groups.hpp b/sycl/include/sycl/ext/oneapi/experimental/non_uniform_groups.hpp index 90275945b13fc..a2f2bfb321842 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/non_uniform_groups.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/non_uniform_groups.hpp @@ -7,10 +7,13 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include -#include -#include + +#include // for sub_group_mask +#include // for marray +#include // for vec + +#include // for size_t +#include // for uint32_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/opportunistic_group.hpp b/sycl/include/sycl/ext/oneapi/experimental/opportunistic_group.hpp index eb4b41269461d..224cffc8bf77d 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/opportunistic_group.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/opportunistic_group.hpp @@ -7,8 +7,17 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include + +#include // for PI_ERROR_INVALID_DEVICE +#include // for is_group, is_user_cons... +#include // for runtime_error +#include // for sub_group_mask +#include // for id +#include // for memory_scope +#include // for range + +#include // for uint32_t +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/experimental/tangle_group.hpp b/sycl/include/sycl/ext/oneapi/experimental/tangle_group.hpp index f1518405b6f0c..3d21f2bfd2268 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/tangle_group.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/tangle_group.hpp @@ -7,8 +7,17 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include + +#include // for PI_ERROR_INVALID_DEVICE +#include // for is_group, is_user_cons... +#include // for runtime_error +#include // for sub_group_mask +#include // for id +#include // for memory_scope +#include // for range +#include // for sub_group + +#include // for enable_if_t, decay_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/filter_selector.hpp b/sycl/include/sycl/ext/oneapi/filter_selector.hpp index f4cd247e05f29..fd2f0747653b3 100644 --- a/sycl/include/sycl/ext/oneapi/filter_selector.hpp +++ b/sycl/include/sycl/ext/oneapi/filter_selector.hpp @@ -8,10 +8,12 @@ #pragma once -#include +#include // for __SYCL_EXPORT +#include // for device +#include // for device_selector -#include -#include +#include // for shared_ptr +#include // for string // 4.6.1 Device selection class diff --git a/sycl/include/sycl/ext/oneapi/functional.hpp b/sycl/include/sycl/ext/oneapi/functional.hpp index 309178f14577e..2e3ee036043f4 100644 --- a/sycl/include/sycl/ext/oneapi/functional.hpp +++ b/sycl/include/sycl/ext/oneapi/functional.hpp @@ -7,11 +7,11 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include -#include -#include +#include +#include // for maximum, minimum + +#include // for bit_and, bit_or, bit_xor, multiplies namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/group_local_memory.hpp b/sycl/include/sycl/ext/oneapi/group_local_memory.hpp index a30553de58d58..8bfa0270e6989 100644 --- a/sycl/include/sycl/ext/oneapi/group_local_memory.hpp +++ b/sycl/include/sycl/ext/oneapi/group_local_memory.hpp @@ -7,17 +7,20 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include -#include -#include -#include -#include -#include +#include // for address_space, decorated +#include // for __SYCL_ALWAYS_INLINE +#include // for PI_ERROR_INVALID_OPERA... +#include // for is_group +#include // for feature_not_supported +#include // for multi_ptr -#include -#include -#include +#include // for enable_if_t + +#ifdef __SYCL_DEVICE_ONLY__ +// Request a fixed-size allocation in local address space at kernel scope. +extern "C" __DPCPP_SYCL_EXTERNAL __attribute__((opencl_local)) std::uint8_t * +__sycl_allocateLocalMemory(std::size_t Size, std::size_t Alignment); +#endif namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/kernel_properties/properties.hpp b/sycl/include/sycl/ext/oneapi/kernel_properties/properties.hpp index 5463d2a183f7c..dc53678d2618c 100644 --- a/sycl/include/sycl/ext/oneapi/kernel_properties/properties.hpp +++ b/sycl/include/sycl/ext/oneapi/kernel_properties/properties.hpp @@ -8,12 +8,16 @@ #pragma once -#include -#include -#include -#include - -#include +#include // for aspect +#include // for PropKind +#include // for SizeListToStr +#include // for property_value + +#include // for array +#include // for size_t +#include // for uint32_t +#include // for true_type +#include // for declval namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/latency_control/properties.hpp b/sycl/include/sycl/ext/oneapi/latency_control/properties.hpp index 61df621d83c9b..630a2ae0ae248 100644 --- a/sycl/include/sycl/ext/oneapi/latency_control/properties.hpp +++ b/sycl/include/sycl/ext/oneapi/latency_control/properties.hpp @@ -8,8 +8,10 @@ #pragma once -#include -#include +#include // for PropKind +#include // for property_value + +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/matrix/matrix-intel.hpp b/sycl/include/sycl/ext/oneapi/matrix/matrix-intel.hpp index 224789a0f304b..9de4f4ec1851f 100644 --- a/sycl/include/sycl/ext/oneapi/matrix/matrix-intel.hpp +++ b/sycl/include/sycl/ext/oneapi/matrix/matrix-intel.hpp @@ -8,11 +8,23 @@ #pragma once -#include "matrix-unified-utils.hpp" -#include "utils.hpp" -#include -#include -#include +#include "matrix-unified-utils.hpp" // for use, layout, tf32, matrix +#include "utils.hpp" // for getDecorated + +#include // for MatrixLayout, MatrixUse +#include // for address_space, decorated +#include // for __SYCL_ALWAYS_INLINE +#include // for PI_ERROR_INVALID_DEVICE +#include // for runtime_error +#include // for bfloat16 +#include // for group +#include // for multi_ptr +#include // for sub_group + +#include // for size_t +#include // for uint32_t +#include // for ignore, tuple, _Swallo... +#include // for enable_if_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/matrix/matrix-tensorcores.hpp b/sycl/include/sycl/ext/oneapi/matrix/matrix-tensorcores.hpp index 53f11ab3f5e08..94ae318540012 100644 --- a/sycl/include/sycl/ext/oneapi/matrix/matrix-tensorcores.hpp +++ b/sycl/include/sycl/ext/oneapi/matrix/matrix-tensorcores.hpp @@ -8,8 +8,17 @@ // ===-------------------------------------------------------------------=== // #pragma once + #include "matrix-unified-utils.hpp" -#include + +#include // for half +#include // for bfloat16 +#include // for half +#include // for marray + +#include // for size_t +#include // for int8_t, uint8_t, int32_t +#include // for enable_if_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/matrix/matrix-unified.hpp b/sycl/include/sycl/ext/oneapi/matrix/matrix-unified.hpp index ea0d5ace9ea92..7b101b18cea90 100644 --- a/sycl/include/sycl/ext/oneapi/matrix/matrix-unified.hpp +++ b/sycl/include/sycl/ext/oneapi/matrix/matrix-unified.hpp @@ -7,9 +7,26 @@ // ===--------------------------------------------------------------------=== // #pragma once + #include "matrix-intel.hpp" -#include "utils.hpp" -#include + +#if defined(__SYCL_DEVICE_ONLY__) && defined(__NVPTX__) +#include "matrix-tensorcores.hpp" +#endif + +#include // for address_space +#include // for __SYCL_ALWAYS_... +#include // for PI_ERROR_INVAL... +#include // for runtime_error +#include // for layout, use, tf32 +#include // for marray +#include // for multi_ptr + +#include // for size_t, memcpy +#include // for uint32_t +#include // for ignore, _Swall... +#include // for is_same, remov... + namespace sycl { inline namespace _V1 { namespace ext { diff --git a/sycl/include/sycl/ext/oneapi/matrix/static-query-use.hpp b/sycl/include/sycl/ext/oneapi/matrix/static-query-use.hpp index f9e46fc4fbab5..f30ff53bb8a55 100644 --- a/sycl/include/sycl/ext/oneapi/matrix/static-query-use.hpp +++ b/sycl/include/sycl/ext/oneapi/matrix/static-query-use.hpp @@ -20,6 +20,15 @@ #pragma once +#include // for half +#include +#include // for use, layout +#include // for joint_matrix + +#include // for size_t +#include // for uint32_t, int8_t +#include // for enable_if + namespace sycl { inline namespace _V1 { namespace ext { diff --git a/sycl/include/sycl/ext/oneapi/owner_less.hpp b/sycl/include/sycl/ext/oneapi/owner_less.hpp index 069fd3dbaf75c..93743b43b01ce 100644 --- a/sycl/include/sycl/ext/oneapi/owner_less.hpp +++ b/sycl/include/sycl/ext/oneapi/owner_less.hpp @@ -8,18 +8,20 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include // for access_mode +#include // for host_acce... +#include // for context +#include // for device +#include // for event +#include // for accessor +#include // for weak_object +#include // for kernel +#include // for kernel_id +#include // for bundle_state +#include // for platform +#include // for sampled_i... +#include // for queue +#include // for stream namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/properties/properties.hpp b/sycl/include/sycl/ext/oneapi/properties/properties.hpp index e7d547eb89cd6..bb89db3e93350 100644 --- a/sycl/include/sycl/ext/oneapi/properties/properties.hpp +++ b/sycl/include/sycl/ext/oneapi/properties/properties.hpp @@ -8,14 +8,14 @@ #pragma once -#include -#include -#include -#include -#include - -#include -#include +#include // for IsRuntimePr... +#include // for Sorted, Mer... +#include // for property_value +#include // for is_device_c... + +#include // for tuple, tupl... +#include // for enable_if_t +#include // for tuple namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/properties/property.hpp b/sycl/include/sycl/ext/oneapi/properties/property.hpp index a6112a6d7ea9f..e6220f8a79e3e 100644 --- a/sycl/include/sycl/ext/oneapi/properties/property.hpp +++ b/sycl/include/sycl/ext/oneapi/properties/property.hpp @@ -154,6 +154,10 @@ template <> struct IsRuntimeProperty : std::true_type {}; #pragma once +#include // for nullptr_t +#include // for uint32_t +#include // for false_type + namespace sycl { inline namespace _V1 { namespace ext { diff --git a/sycl/include/sycl/ext/oneapi/properties/property_utils.hpp b/sycl/include/sycl/ext/oneapi/properties/property_utils.hpp index 9f49dc3684888..4348b6a56ef8c 100644 --- a/sycl/include/sycl/ext/oneapi/properties/property_utils.hpp +++ b/sycl/include/sycl/ext/oneapi/properties/property_utils.hpp @@ -8,11 +8,17 @@ #pragma once -#include -#include -#include - -#include +#include // for mp_sort_q +#include // for mp_list +#include // for mp_rename +#include // for mp_bool +#include // for PropertyID, IsRun... + +#include // for tuple_element +#include // for size_t +#include // for tuple +#include // for false_type, true_... +#include // for tuple namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/properties/property_value.hpp b/sycl/include/sycl/ext/oneapi/properties/property_value.hpp index 1a1e613bd0d70..e208f59d85830 100644 --- a/sycl/include/sycl/ext/oneapi/properties/property_value.hpp +++ b/sycl/include/sycl/ext/oneapi/properties/property_value.hpp @@ -8,8 +8,10 @@ #pragma once -#include -#include +#include // for IsCompileTi... +#include // for HasValue + +#include // for enable_if_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/sub_group.hpp b/sycl/include/sycl/ext/oneapi/sub_group.hpp index e532dece049b3..54109c712abbf 100644 --- a/sycl/include/sycl/ext/oneapi/sub_group.hpp +++ b/sycl/include/sycl/ext/oneapi/sub_group.hpp @@ -8,9 +8,10 @@ #pragma once -#include -#include -#include +#include // for __SYCL_DEPRECATED +#include // for sub_group + +#include // for _Swallow_assign, ignore namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/sub_group_mask.hpp b/sycl/include/sycl/ext/oneapi/sub_group_mask.hpp index fba15ddf14c47..21e410bc8c15c 100644 --- a/sycl/include/sycl/ext/oneapi/sub_group_mask.hpp +++ b/sycl/include/sycl/ext/oneapi/sub_group_mask.hpp @@ -7,15 +7,18 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include -#include -#include -#include -#include -#include - -#include +#include // for Builder +#include // for is_sub_group +#include // for errc, exception +#include // for id +#include // for marray + +#include // for assert +#include // for CHAR_BIT +#include // for size_t +#include // for uint32_t +#include // for error_code +#include // for enable_if_t, decay_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/weak_object.hpp b/sycl/include/sycl/ext/oneapi/weak_object.hpp index f8c4967d7c2d1..681050353b181 100644 --- a/sycl/include/sycl/ext/oneapi/weak_object.hpp +++ b/sycl/include/sycl/ext/oneapi/weak_object.hpp @@ -8,12 +8,20 @@ #pragma once -#include -#include -#include -#include - -#include +#include // for target, mode +#include // for accessor +#include // for buffer +#include // for createSyc... +#include // for detail +#include // for make_erro... +#include // for buffer +#include // for weak_obje... +#include // for range +#include // for stream + +#include // for shared_ptr +#include // for optional +#include // for size_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/ext/oneapi/weak_object_base.hpp b/sycl/include/sycl/ext/oneapi/weak_object_base.hpp index 1b5b7fe68f181..f95e971023268 100644 --- a/sycl/include/sycl/ext/oneapi/weak_object_base.hpp +++ b/sycl/include/sycl/ext/oneapi/weak_object_base.hpp @@ -8,7 +8,9 @@ #pragma once -#include +#include // for getSyclObjImpl + +#include // for declval namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/functional.hpp b/sycl/include/sycl/functional.hpp index a33baeb0e7708..4dae45d392b66 100644 --- a/sycl/include/sycl/functional.hpp +++ b/sycl/include/sycl/functional.hpp @@ -8,9 +8,9 @@ #pragma once -#include - -#include +#include // for logical_and, logical_or, bit_and, bit_or, bit... +#include // for common_type +#include // for forward namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/group.hpp b/sycl/include/sycl/group.hpp index db8d3e710eb4b..39b1f0a0293c8 100644 --- a/sycl/include/sycl/group.hpp +++ b/sycl/include/sycl/group.hpp @@ -8,23 +8,30 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include +#include // for __spirv_MemoryBarrier +#include // for Scope, __ocl_event_t +#include // for decorated, mode, addr... +#include // for NDLoop, __SYCL_ASSERT +#include // for __SYCL_TYPE +#include // for __SYCL2020_DEPRECATED +#include // for ConvertToOpenCLType_t +#include // for Builder, getSPIRVMemo... +#include // for id, range +#include // for is_bool, change_base_... +#include // for device_event +#include // for make_error_code, errc +#include // for h_item +#include // for id +#include // for item +#include // for memory_scope +#include // for multi_ptr, address_sp... +#include // for decorated_global_ptr +#include // for range + +#include // for unique_ptr +#include // for size_t +#include // for uint8_t, uint32_t +#include // for enable_if_t, remove_c... namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/group_algorithm.hpp b/sycl/include/sycl/group_algorithm.hpp index 93bde1e892c4f..dfdc90bdfbbc9 100644 --- a/sycl/include/sycl/group_algorithm.hpp +++ b/sycl/include/sycl/group_algorithm.hpp @@ -7,23 +7,33 @@ //===----------------------------------------------------------------------===// #pragma once -#include - -#include -#include -#include -#include -#include -#include -#include -#include + +#include // for array +#include // for loop +#include // for id, range +#include // for is_contained, type_list +#include // for remove_pointer, is_pointer +#include // for make_error_code, errc, exception +#include // for plus, multiplies, maximum +#include // for group +#include // for half +#include // for id +#include // for known_identity_v +#include // for nd_item +#include // for range +#include // for sub_group +#include // for vec + +#ifdef __SYCL_DEVICE_ONLY__ #include -#include -#include -#include -#include -#include -#include +#if defined(__NVPTX__) +#include +#endif +#endif + +#include // for complex +#include // for size_t +#include // for enable_if_t, decay_t, integra... namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/group_barrier.hpp b/sycl/include/sycl/group_barrier.hpp index edd36037cc7a1..ca7c5e6d33be8 100644 --- a/sycl/include/sycl/group_barrier.hpp +++ b/sycl/include/sycl/group_barrier.hpp @@ -9,14 +9,10 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include +#include // for make_error_code, errc, exception +#include // for memory_scope + +#include // for enable_if_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/h_item.hpp b/sycl/include/sycl/h_item.hpp index cb4f6eea9f570..af1eb6200e4ca 100644 --- a/sycl/include/sycl/h_item.hpp +++ b/sycl/include/sycl/h_item.hpp @@ -8,10 +8,13 @@ #pragma once -#include -#include -#include -#include +#include // for Builder, group +#include // for id, range +#include // for id +#include // for item +#include // for range + +#include // for size_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/half_type.hpp b/sycl/include/sycl/half_type.hpp index 4d9fe8ca86078..1dac778320977 100644 --- a/sycl/include/sycl/half_type.hpp +++ b/sycl/include/sycl/half_type.hpp @@ -8,18 +8,23 @@ #pragma once +#include // for bit_cast +#include // for __SYCL_EXPORT +#include // for istream, ostream +#include // for vector_alignment + +#ifdef __SYCL_DEVICE_ONLY__ #include -#include -#include -#include -#include -#include +#endif -#include // for uint16_t -#include -#include +#include // for size_t +#include // for uint16_t, uint32_t, uint8_t +#include // for hash +#include // for float_denorm_style, float_r... +#include // for hash +#include // for enable_if_t -#if !__has_builtin(__builtin_expect) +#if !defined(__has_builtin) || !__has_builtin(__builtin_expect) #define __builtin_expect(a, b) (a) #endif @@ -27,7 +32,8 @@ // `constexpr` could work because the implicit conversion from `float` to // `_Float16` can be `constexpr`. #define __SYCL_CONSTEXPR_HALF constexpr -#elif __cpp_lib_bit_cast || __has_builtin(__builtin_bit_cast) +#elif __cpp_lib_bit_cast || \ + (defined(__has_builtin) && __has_builtin(__builtin_bit_cast)) #define __SYCL_CONSTEXPR_HALF constexpr #else #define __SYCL_CONSTEXPR_HALF diff --git a/sycl/include/sycl/handler.hpp b/sycl/include/sycl/handler.hpp index 862e7ffcb5a24..ebbafa2526012 100644 --- a/sycl/include/sycl/handler.hpp +++ b/sycl/include/sycl/handler.hpp @@ -11,44 +11,68 @@ #include #include #include +#include #include #include #include +#include +#include #include -#include -#include +#include +#include +#include +#include +#include +#include #include +#include #include +#include +#include #include +#include +#include +#include #include +#include +#include #include #include -#include +#include #include #include #include #include #include +#include #include #include #include #include +#include #include +#include +#include #include + #ifdef __SYCL_NATIVE_CPU__ #include #endif -#include - -#include -#include - +#include #include -#include #include +#include +#include +#include #include #include +#include +#include + +// TODO: refactor this header +// 47(!!!) includes of SYCL headers + 10 includes of standard headers. +// 3300+ lines of code // SYCL_LANGUAGE_VERSION is 4 digit year followed by 2 digit revision #if !SYCL_LANGUAGE_VERSION || SYCL_LANGUAGE_VERSION < 202001 diff --git a/sycl/include/sycl/id.hpp b/sycl/include/sycl/id.hpp index d22069aff5b3e..ff4fc031c6e9e 100644 --- a/sycl/include/sycl/id.hpp +++ b/sycl/include/sycl/id.hpp @@ -8,11 +8,15 @@ #pragma once -#include -#include -#include -#include -#include +#include // for array +#include // for InitializedVal +#include // for __SYCL_ASSUME_INT +#include // for __SYCL_DEPRECATED, __SYCL_A... +#include // for make_error_code, errc, exce... +#include // for range + +#include // for size_t +#include // for enable_if_t, conditional_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/image.hpp b/sycl/include/sycl/image.hpp index 2d2a609bf40d1..20c11b892d1f5 100644 --- a/sycl/include/sycl/image.hpp +++ b/sycl/include/sycl/image.hpp @@ -8,18 +8,37 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include +#include // for placeholder +#include // for cl_float, cl_half +#include // for backend, backe... +#include // for range +#include // for context +#include // for aligned_allocator +#include // for InteropFeature... +#include // for convertToArrayOfN +#include // for __SYCL2020_DEP... +#include // for __SYCL_EXPORT +#include // for getSyclObjImpl +#include // for OwnerLessBase +#include // for pi_native_handle +#include // for iterator_value... +#include // for SYCLMemObjAllo... +#include // for is_contained +#include // for event +#include // for make_error_code +#include // for accessor_prope... +#include // for property_list +#include // for range, rangeTo... +#include // for image_sampler +#include // for make_unique_ptr +#include // for vec + +#include // for size_t, nullptr_t +#include // for function +#include // for shared_ptr +#include // for uint8_t, uint32_t +#include // for enable_if_t +#include // for hash namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/info/info_desc.hpp b/sycl/include/sycl/info/info_desc.hpp index 9c6f933bd6f32..d8589f4d13f87 100644 --- a/sycl/include/sycl/info/info_desc.hpp +++ b/sycl/include/sycl/info/info_desc.hpp @@ -8,8 +8,14 @@ #pragma once +#include // for __SYCL2020_DEPRECATED +#include // for PI_DEVICE_AFFINITY_DOMAIN_L... + +// FIXME: .def files included to this file use all sorts of SYCL objects like +// id, range, traits, etc. We have to include some headers before including .def +// files. #include -#include +#include #include #include diff --git a/sycl/include/sycl/interop_handle.hpp b/sycl/include/sycl/interop_handle.hpp index c87673d90c058..9839ffd58a6cb 100644 --- a/sycl/include/sycl/interop_handle.hpp +++ b/sycl/include/sycl/interop_handle.hpp @@ -8,14 +8,26 @@ #pragma once -#include -#include -#include -#include -#include -#include - -#include +#include // for target, mode, place... +#include // for AccessorBaseHost +#include // for backend, backend_re... +#include // for context +#include // for __SYCL_EXPORT +#include // for context_impl +#include // for getSyclObjImpl +#include // for _pi_mem, pi_native_... +#include // for device, device_impl +#include // for invalid_object_error +#include // for queue_impl +#include // for accessor_property_list +#include // for image +#include // for buffer + +#include // for shared_ptr +#include // for int32_t +#include // for enable_if_t +#include // for move, pair +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/item.hpp b/sycl/include/sycl/item.hpp index 83c3805843434..0bf171f9e1971 100644 --- a/sycl/include/sycl/item.hpp +++ b/sycl/include/sycl/item.hpp @@ -8,14 +8,16 @@ #pragma once -#include -#include -#include -#include -#include -#include - -#include +#include // for __SYCL_ASSUME_INT +#include // for __SYCL_ALWAYS_INLINE, __SYC... +#include // for Builder +#include // for id, range, ItemBase +#include // for make_error_code, errc, exce... +#include // for id, item +#include // for range + +#include // for size_t +#include // for enable_if_t, conditional_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/kernel.hpp b/sycl/include/sycl/kernel.hpp index 3227b910cf675..b266917109da9 100644 --- a/sycl/include/sycl/kernel.hpp +++ b/sycl/include/sycl/kernel.hpp @@ -8,17 +8,20 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include +#include // for backend, backend_return_t +#include // for context +#include // for __SYCL2020_DEPRECATED +#include // for __SYCL_EXPORT +#include // for is_kernel_device_specif... +#include // for OwnerLessBase +#include // for pi_native_handle +#include // for device +#include // for bundle_state +#include // for range + +#include // for size_t +#include // for shared_ptr, hash, opera... +#include // for hash namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/kernel_bundle.hpp b/sycl/include/sycl/kernel_bundle.hpp index 57a0acca8d9a8..fdd2b0c77bd1b 100644 --- a/sycl/include/sycl/kernel_bundle.hpp +++ b/sycl/include/sycl/kernel_bundle.hpp @@ -8,21 +8,28 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include +#include // for backend, backend_return_t +#include // for context +#include // for __SYCL_EXPORT +#include // for get_spec_constant_symboli... +#include // for OwnerLessBase +#include // for pi_native_handle +#include // for cast +#include // for device +#include // for kernel, kernel_bundle +#include // for bundle_state +#include // for property_list + +#include // for array +#include // for size_t, memcpy +#include // for function +#include // for distance +#include // for shared_ptr, operator==, hash +#include // for string +#include // for enable_if_t, remove_refer... +#include // for move +#include // for hash +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/kernel_handler.hpp b/sycl/include/sycl/kernel_handler.hpp index 9054e81104c47..738c23b3eda97 100644 --- a/sycl/include/sycl/kernel_handler.hpp +++ b/sycl/include/sycl/kernel_handler.hpp @@ -8,11 +8,33 @@ #pragma once -#include -#include -#include +#include // for __SYCL_TYPE +#include // for __SYCL_ALWAYS_INLINE +#include // for PI_ERROR_INVALID_OPERATION +#include // for feature_not_supported -#include +#ifdef __SYCL_DEVICE_ONLY__ +#include +#endif + +#include // for remove_reference_t + +#ifdef __SYCL_DEVICE_ONLY__ +// Get the value of the specialization constant with given symbolic ID. +// `SymbolicID` is a unique string ID of a specialization constant. +// `DefaultValue` contains a pointer to a global variable with the initializer, +// which should be used as the default value of the specialization constants. +// `RTBuffer` is a pointer to a runtime buffer, which holds values of all +// specialization constant and should be used if native specialization constants +// are not available. +template +__DPCPP_SYCL_EXTERNAL T __sycl_getScalar2020SpecConstantValue( + const char *SymbolicID, const void *DefaultValue, const void *RTBuffer); + +template +__DPCPP_SYCL_EXTERNAL T __sycl_getComposite2020SpecConstantValue( + const char *SymbolicID, const void *DefaultValue, const void *RTBuffer); +#endif namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/known_identity.hpp b/sycl/include/sycl/known_identity.hpp index 56db9aa532822..80dc784bae669 100644 --- a/sycl/include/sycl/known_identity.hpp +++ b/sycl/include/sycl/known_identity.hpp @@ -8,11 +8,19 @@ #pragma once -#include -#include -#include -#include -#include +#include // for half +#include // for is_genbool, is_genint... +#include // for bit_and, bit_or, bit_xor +#include // for half +#include // for marray +#include // for vec + +#include // for complex +#include // for byte, size_t +#include // for logical_and, logical_or +#include // for numeric_limits +#include // for uint16_t +#include // for enable_if_t, bool_con... namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/marray.hpp b/sycl/include/sycl/marray.hpp index d7849fed66904..827ae13b0a741 100644 --- a/sycl/include/sycl/marray.hpp +++ b/sycl/include/sycl/marray.hpp @@ -8,15 +8,15 @@ #pragma once -#include -#include -#include -#include -#include - -#include -#include -#include +#include // for half +#include // for ArrayCreator +#include // for half + +#include // for array +#include // for size_t +#include // for int64_t, int8_t, uint64_t, int16_t +#include // for enable_if_t, remove_const, is_conv... +#include // for index_sequence, make_index_sequence namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/memory_enums.hpp b/sycl/include/sycl/memory_enums.hpp index 08ae069168c60..1f3bd18780858 100644 --- a/sycl/include/sycl/memory_enums.hpp +++ b/sycl/include/sycl/memory_enums.hpp @@ -8,7 +8,10 @@ #pragma once -#include +#include // for PI_MEMORY_ORDER_ACQUIRE, PI_MEMORY_ORDER_ACQ_REL + +#include // for memory_order +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/multi_ptr.hpp b/sycl/include/sycl/multi_ptr.hpp index 5e1eef340f577..410cc9a317f7d 100644 --- a/sycl/include/sycl/multi_ptr.hpp +++ b/sycl/include/sycl/multi_ptr.hpp @@ -7,12 +7,17 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include -#include -#include -#include -#include + +#include // for __spirv_ocl_prefetch +#include // for address_space, decorated +#include // for half +#include // for __SYCL2020_DEPRECATED +#include // for const_if_const_AS +#include // for BIsRepresentationT + +#include // for nullptr_t, ptrdiff_t, size_t +#include // for random_access_iterator_tag +#include // for enable_if_t, add_pointer_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/nd_item.hpp b/sycl/include/sycl/nd_item.hpp index c04422492c252..26d1f4351c915 100644 --- a/sycl/include/sycl/nd_item.hpp +++ b/sycl/include/sycl/nd_item.hpp @@ -8,20 +8,25 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include +#include // for __spirv_ControlBarrier +#include // for Scope +#include // for mode, fence_space +#include // for __SYCL_ASSUME_INT +#include // for __SYCL2020_DEPRECATED, __SY... +#include // for getSPIRVMemorySemanticsMask +#include // for device_event +#include // for make_error_code, errc, exce... +#include // for group +#include // for id +#include // for item +#include // for nd_range +#include // for decorated_global_ptr, decor... +#include // for range +#include // for sub_group + +#include // for size_t +#include // for uint32_t +#include // for enable_if_t, remove_const_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/nd_range.hpp b/sycl/include/sycl/nd_range.hpp index 15299e5493603..e4ff4881be17a 100644 --- a/sycl/include/sycl/nd_range.hpp +++ b/sycl/include/sycl/nd_range.hpp @@ -8,10 +8,9 @@ #pragma once -#include -#include -#include -#include +#include // for __SYCL2020_DEPRECATED +#include // for id +#include // for range namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/pipes.hpp b/sycl/include/sycl/pipes.hpp index 4bee6b99b54b3..874908867a249 100644 --- a/sycl/include/sycl/pipes.hpp +++ b/sycl/include/sycl/pipes.hpp @@ -8,7 +8,9 @@ #pragma once -#include +#include // for pipe + +#include // for int32_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/platform.hpp b/sycl/include/sycl/platform.hpp index 71e5a8d748011..81a07ba3ab1f0 100644 --- a/sycl/include/sycl/platform.hpp +++ b/sycl/include/sycl/platform.hpp @@ -8,14 +8,26 @@ #pragma once -#include -#include -#include -#include -#include -#include - -#include +#include // for aspect +#include // for backend, backend_return_t +#include // for context +#include // for __SYCL2020_DEPRECATED +#include // for __SYCL_EXPORT +#include // for is_platform_info_desc +#include // for OwnerLessBase +#include // for pi_native_handle +#include // for EnableIfSYCL2020DeviceS... +#include // for device_type + +#ifdef __SYCL_INTERNAL_API +#include +#endif + +#include // for size_t +#include // for shared_ptr, hash, opera... +#include // for string +#include // for hash +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/pointers.hpp b/sycl/include/sycl/pointers.hpp index 4c49e1e490c7f..1cd82431966ad 100644 --- a/sycl/include/sycl/pointers.hpp +++ b/sycl/include/sycl/pointers.hpp @@ -7,7 +7,9 @@ //===----------------------------------------------------------------------===// #pragma once -#include + +#include // for decorated, address_space +#include // for __SYCL_DEPRECATED namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/properties/accessor_properties.hpp b/sycl/include/sycl/properties/accessor_properties.hpp index 08cd5a7ca5b5c..b1b6c50fea2c7 100644 --- a/sycl/include/sycl/properties/accessor_properties.hpp +++ b/sycl/include/sycl/properties/accessor_properties.hpp @@ -8,11 +8,16 @@ #pragma once -#include -#include -#include -#include -#include +#include // for mode, target +#include // for __SYCL_EBO +#include // for __SYCL_TYPE +#include // for __SYCL2020_DEP... +#include // for DataLessPropKind +#include // for IsCompileTimeP... +#include // for image_accessor +#include // for is_property_of + +#include // for true_type, fal... namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/properties/buffer_properties.hpp b/sycl/include/sycl/properties/buffer_properties.hpp index b4c70ae85d9f0..d904597944eec 100644 --- a/sycl/include/sycl/properties/buffer_properties.hpp +++ b/sycl/include/sycl/properties/buffer_properties.hpp @@ -8,11 +8,14 @@ #pragma once -#include -#include -#include - -#include +#include // for context +#include // for PropWithDataKind, Dat... +#include // for is_property_of + +#include // for mutex +#include // for uint32_t, uint64_t +#include // for true_type +#include // for move namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/properties/context_properties.hpp b/sycl/include/sycl/properties/context_properties.hpp index bf21c6e53b44a..cfc1084329584 100644 --- a/sycl/include/sycl/properties/context_properties.hpp +++ b/sycl/include/sycl/properties/context_properties.hpp @@ -8,9 +8,11 @@ #pragma once -#include -#include -#include +#include // for __SYCL2020_DEPRECATED +#include // for DataLessPropKind, Dat... +#include // for is_property_of + +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/properties/image_properties.hpp b/sycl/include/sycl/properties/image_properties.hpp index d946abdad4d74..43e6a22d81713 100644 --- a/sycl/include/sycl/properties/image_properties.hpp +++ b/sycl/include/sycl/properties/image_properties.hpp @@ -8,9 +8,13 @@ #pragma once -#include -#include -#include +#include // for context +#include // for PropWithDataKind, Dat... +#include // for is_property_of + +#include // for mutex +#include // for true_type +#include // for move namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/properties/property_traits.hpp b/sycl/include/sycl/properties/property_traits.hpp index 6715e7609a32a..c4d62b080808e 100644 --- a/sycl/include/sycl/properties/property_traits.hpp +++ b/sycl/include/sycl/properties/property_traits.hpp @@ -8,7 +8,9 @@ #pragma once -#include +#include // for DataLessPropertyBase, Pro... + +#include // for bool_constant, false_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/properties/queue_properties.hpp b/sycl/include/sycl/properties/queue_properties.hpp index f8451ad460a3b..1e5dbec090f3a 100644 --- a/sycl/include/sycl/properties/queue_properties.hpp +++ b/sycl/include/sycl/properties/queue_properties.hpp @@ -8,8 +8,11 @@ #pragma once -#include -#include +#include // for __SYCL2020_DEPRECATED +#include // for DataLessPropKind +#include // for is_property_of + +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/properties/reduction_properties.hpp b/sycl/include/sycl/properties/reduction_properties.hpp index 51092f33dc5d0..eaabf22524979 100644 --- a/sycl/include/sycl/properties/reduction_properties.hpp +++ b/sycl/include/sycl/properties/reduction_properties.hpp @@ -8,9 +8,7 @@ #pragma once -#include -#include -#include +#include // for DataLessPropKind, DataLes... namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/property_list.hpp b/sycl/include/sycl/property_list.hpp index 156105a0a6613..9fa47fcd0b447 100644 --- a/sycl/include/sycl/property_list.hpp +++ b/sycl/include/sycl/property_list.hpp @@ -8,8 +8,16 @@ #pragma once -#include -#include +#include // for PI_ERROR_INVALID_VALUE +#include // for DataLessPropKind, Pro... +#include // for PropertyListBase +#include // for invalid_object_error +#include // for is_property + +#include // for bitset +#include // for shared_ptr +#include // for conditional_t, enable... +#include // for vector namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/queue.hpp b/sycl/include/sycl/queue.hpp index 9e4370ea70460..c5f50d27a0b65 100644 --- a/sycl/include/sycl/queue.hpp +++ b/sycl/include/sycl/queue.hpp @@ -8,12 +8,50 @@ #pragma once -#include -#include -#include -#include -#include -#include +#include // for target, access... +#include // for accessor +#include // for aspect +#include // for async_handler +#include // for backend, backe... +#include // for buffer +#include // for context +#include // for AssertHappened +#include // for check_fn_signa... +#include // for code_location +#include // for __SYCL2020_DEP... +#include // for __SYCL_EXPORT +#include // for is_queue_info_... +#include // for KernelInfo +#include // for OwnerLessBase +#include // for pi_mem_advice +#include // for device +#include // for device_selector +#include // for event +#include // for make_error_code +#include // for defaultAsyncHa... +#include // for image_descriptor +#include // for interop_semaph... +#include // for image_mem_handle +#include // for device_global +#include // for device_image_s... +#include // for graph_state +#include // for empty_properti... +#include // for handler, isDev... +#include // for id +#include // for auto_name +#include // for kernel_handler +#include // for nd_range +#include // for property_list +#include // for range + +#include // for size_t +#include // for function +#include // for shared_ptr, hash +#include // for int32_t +#include // for tuple +#include // for remove_all_ext... +#include // for hash +#include // for vector // having _TWO_ mid-param #ifdefs makes the functions very difficult to read. // Here we simplify the KernelFunc param is simplified to be @@ -2964,6 +3002,11 @@ inline namespace _V1 { namespace detail { #define __SYCL_ASSERT_START 1 + +namespace __sycl_service_kernel__ { +class AssertInfoCopier; +} // namespace __sycl_service_kernel__ + /** * Submit copy task for assert failure flag and host-task to check the flag * \param Event kernel's event to depend on i.e. the event represents the diff --git a/sycl/include/sycl/range.hpp b/sycl/include/sycl/range.hpp index 24f3f857029b1..3d7e189b9fb62 100644 --- a/sycl/include/sycl/range.hpp +++ b/sycl/include/sycl/range.hpp @@ -7,11 +7,13 @@ //===----------------------------------------------------------------------===// #pragma once -#include -#include -#include -#include +#include // for array +#include // for Builder + +#include // for array +#include // for size_t +#include // for enable_if_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/reduction.hpp b/sycl/include/sycl/reduction.hpp index ac6046e880c41..9d398961181d5 100644 --- a/sycl/include/sycl/reduction.hpp +++ b/sycl/include/sycl/reduction.hpp @@ -8,23 +8,55 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include +#include // for address_s... +#include // for local_acc... +#include // for aspect +#include // for IsValidAt... +#include // for atomic_ref +#include // for buffer +#include // for min +#include // for __SYCL_EX... +#include // for is_sgenfloat +#include // for createSyc... +#include // for id +#include // for strategy +#include // for make_tuple +#include // for device +#include // for event +#include // for make_erro... +#include // for queue_impl +#include // for buffer +#include // for workGroup... +#include // for reduce_ov... +#include // for handler +#include // for getDeline... +#include // for auto_name +#include // for IsKnownId... +#include // for marray +#include // for memory_order +#include // for address_s... +#include // for nd_item +#include // for nd_range +#include // for no_init +#include // for initializ... +#include // for property_... +#include // for queue +#include // for range +#include // for dynamic_e... +#include // for malloc_de... + +#include // for min +#include // for array +#include // for assert +#include // for size_t +#include // for shared_ptr +#include // for nullopt +#include // for uint32_t +#include // for operator+ +#include // for _Swallow_... +#include // for enable_if_t +#include // for index_seq... +#include // for tuple namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/sampler.hpp b/sycl/include/sycl/sampler.hpp index 55b275965de1e..42e33209cbf9a 100644 --- a/sycl/include/sycl/sampler.hpp +++ b/sycl/include/sycl/sampler.hpp @@ -8,12 +8,15 @@ #pragma once -#include -#include -#include -#include -#include -#include +#include // for mode, placeholder, target +#include // for __SYCL_SPECIAL_CLASS, __SYCL_TYPE +#include // for __SYCL_EXPORT +#include // for PI_SAMPLER_ADDRESSING_MODE_CLAMP +#include // for property_list + +#include // for size_t +#include // for shared_ptr, hash +#include // for hash namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/specialization_id.hpp b/sycl/include/sycl/specialization_id.hpp index 102fde3c27e74..5e2bde85b188a 100644 --- a/sycl/include/sycl/specialization_id.hpp +++ b/sycl/include/sycl/specialization_id.hpp @@ -8,6 +8,11 @@ #pragma once +#include // for __SYCL_TYPE +#include // for bundle_state + +#include // for forward + namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/stl.hpp b/sycl/include/sycl/stl.hpp index ba20d3c5b92f9..69415477b84e4 100644 --- a/sycl/include/sycl/stl.hpp +++ b/sycl/include/sycl/stl.hpp @@ -10,9 +10,8 @@ // 4.5 C++ Standard library classes required for the interface -#include - -#include +#include // for unique_ptr +#include // for forward namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/stream.hpp b/sycl/include/sycl/stream.hpp index ae52ac19bb5c0..dd79bd532cc62 100644 --- a/sycl/include/sycl/stream.hpp +++ b/sycl/include/sycl/stream.hpp @@ -8,12 +8,35 @@ #pragma once -#include -#include -#include -#include -#include -#include +#include // for target, mode, address_space +#include // for accessor +#include // for half +#include // for atomic +#include // for isinf, isnan, signbit +#include // for array +#include // for stream_impl +#include // for __SYCL_SPECIAL_CLASS, __S... +#include // for __SYCL2020_DEPRECATED +#include // for __SYCL_EXPORT +#include // for id, range +#include // for OwnerLessBase +#include // for group +#include // for h_item +#include // for half, operator-, operator< +#include // for handler +#include // for item +#include // for nd_item +#include // for nd_range +#include // for property_list +#include // for range +#include // for multi_ptr +#include // for vec, SwizzleOp + +#include // for size_t, byte +#include // for hash, shared_ptr +#include // for uint16_t, uint8_t +#include // for enable_if_t, is_same, fal... +#include // for hash namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/sub_group.hpp b/sycl/include/sycl/sub_group.hpp index f7cc2cc46e4f2..effcd5dac99df 100644 --- a/sycl/include/sycl/sub_group.hpp +++ b/sycl/include/sycl/sub_group.hpp @@ -8,21 +8,25 @@ #pragma once -#include -#include -#include -#include -#include -#include -#include -#include +#include // for address_space, decorated +#include // for __SYCL_DEPRECATED +#include // for select_cl_scalar_inte... +#include // for PI_ERROR_INVALID_DEVICE +#include // for is_scalar_arithmetic +#include // for runtime_error, make_e... +#include // for id +#include // for memory_scope +#include // for multi_ptr +#include // for range +#include // for vec + +#ifdef __SYCL_DEVICE_ONLY__ #include -#include -#include -#include -#include +#endif -#include +#include // for uint32_t +#include // for _Swallow_assign, ignore +#include // for enable_if_t, remove_cv_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/sycl.hpp b/sycl/include/sycl/sycl.hpp index 3563e19128429..acbb495a32880 100644 --- a/sycl/include/sycl/sycl.hpp +++ b/sycl/include/sycl/sycl.hpp @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include @@ -55,6 +56,7 @@ #include #include #include +#include #include #include #if SYCL_EXT_ONEAPI_BACKEND_LEVEL_ZERO @@ -63,6 +65,7 @@ #include #include #include +#include #include #include #include @@ -77,6 +80,7 @@ #include #include #include +#include #include #include #include diff --git a/sycl/include/sycl/sycl_span.hpp b/sycl/include/sycl/sycl_span.hpp index 8f9ee2802526d..55126d0323e4f 100644 --- a/sycl/include/sycl/sycl_span.hpp +++ b/sycl/include/sycl/sycl_span.hpp @@ -126,10 +126,11 @@ template #include // for array #include // for assert -#include // for byte +#include // for size_t, nullptr_t, ptrdiff_t #include // for SIZE_MAX -#include // for iterators -#include // for remove_cv, etc +#include // for size, data, distance, reverse_iterator +#include // for enable_if_t, enable_if, remove_cv_t, false_type +#include // for declval #define _SYCL_SPAN_TEMPLATE_VIS #define _SYCL_SPAN_INLINE_VISIBILITY inline diff --git a/sycl/include/sycl/types.hpp b/sycl/include/sycl/types.hpp index 32723681a3933..d3f63637e3028 100644 --- a/sycl/include/sycl/types.hpp +++ b/sycl/include/sycl/types.hpp @@ -10,8 +10,6 @@ #pragma once -#include - // Check if Clang's ext_vector_type attribute is available. Host compiler // may not be Clang, and Clang may not be built with the extension. #ifdef __clang__ @@ -32,23 +30,38 @@ #error "SYCL device compiler is built without ext_vector_type support" #endif // __HAS_EXT_VECTOR_TYPE__ -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include +#include // for decorated, address_space +#include // for half, cl_char, cl_int +#include // for ArrayCreator, RepeatV... +#include // for __SYCL2020_DEPRECATED +#include // for vector_basic_list +#include // for is_sigeninteger, is_s... +#include // for cout +#include // for memcpy +#include // for is_contained +#include // for is_floating_point +#include // for vector_alignment +#include // for make_error_code, errc +#include // for StorageT, half, Vec16... +#include // for __SYCL_BINOP, __SYCL_... +#include // for multi_ptr + +#include // for array +#include // for assert +#include // for ceil, floor, rint, trunc +#include // for size_t, NULL, byte +#include // for uint8_t, int16_t, int... +#include // for divides, multiplies +#include // for pair +#include // for optional +#include // for operator<<, basic_ost... +#include // for tuple +#include // for enable_if_t, is_same +#include // for index_sequence, make_... +#include // for tuple, variant + #ifndef __SYCL_DEVICE_ONLY__ -#include +#include // for fesetround, fegetround #endif // 4.10.1: Scalar data types diff --git a/sycl/include/sycl/usm.hpp b/sycl/include/sycl/usm.hpp index dbcc8866b0818..f9ab634edc81a 100644 --- a/sycl/include/sycl/usm.hpp +++ b/sycl/include/sycl/usm.hpp @@ -7,13 +7,17 @@ // ===--------------------------------------------------------------------=== // #pragma once -#include -#include -#include -#include -#include - -#include +#include // for max +#include // for context +#include // for code_location +#include // for __SYCL_EXPORT +#include // for device +#include // for property_list +#include // for queue +#include // for alloc + +#include // for max +#include // for size_t namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/usm/usm_allocator.hpp b/sycl/include/sycl/usm/usm_allocator.hpp index e7f35e9d6da6a..6ae1da5a3e350 100644 --- a/sycl/include/sycl/usm/usm_allocator.hpp +++ b/sycl/include/sycl/usm/usm_allocator.hpp @@ -7,17 +7,17 @@ // ===--------------------------------------------------------------------=== // #pragma once -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include +#include // for max +#include // for context +#include // for code_location +#include // for device +#include // for memory_allocation_error +#include // for property_list +#include // for queue +#include // for alloc + +#include // for size_t, aligned_alloc, free +#include // for true_type namespace sycl { inline namespace _V1 { diff --git a/sycl/include/sycl/usm/usm_pointer_info.hpp b/sycl/include/sycl/usm/usm_pointer_info.hpp index 950dd0fb20dee..ba45e85d59097 100644 --- a/sycl/include/sycl/usm/usm_pointer_info.hpp +++ b/sycl/include/sycl/usm/usm_pointer_info.hpp @@ -7,9 +7,8 @@ // ===--------------------------------------------------------------------=== // #pragma once -#include -#include -#include +#include // for __SYCL_EXPORT +#include // for alloc namespace sycl { inline namespace _V1 { diff --git a/sycl/source/detail/buffer_impl.hpp b/sycl/source/detail/buffer_impl.hpp index 0e1b7b7dfb999..e949edad3da9e 100644 --- a/sycl/source/detail/buffer_impl.hpp +++ b/sycl/source/detail/buffer_impl.hpp @@ -15,6 +15,7 @@ #include #include #include +#include // for iterator_to_const_type_t #include #include #include diff --git a/sycl/source/detail/jit_device_binaries.cpp b/sycl/source/detail/jit_device_binaries.cpp index a206eed5d12bf..13ea3faa87ea0 100644 --- a/sycl/source/detail/jit_device_binaries.cpp +++ b/sycl/source/detail/jit_device_binaries.cpp @@ -8,6 +8,8 @@ #include +#include + namespace sycl { inline namespace _V1 { namespace detail { diff --git a/sycl/source/detail/usm/usm_impl.cpp b/sycl/source/detail/usm/usm_impl.cpp index 13e747100bc3d..73c147394fa59 100644 --- a/sycl/source/detail/usm/usm_impl.cpp +++ b/sycl/source/detail/usm/usm_impl.cpp @@ -13,6 +13,7 @@ #include #include #include +#include #include #include diff --git a/sycl/unittests/buffer/BufferDestructionCheck.cpp b/sycl/unittests/buffer/BufferDestructionCheck.cpp index 0abe2918aea36..1bd754c02f6b2 100644 --- a/sycl/unittests/buffer/BufferDestructionCheck.cpp +++ b/sycl/unittests/buffer/BufferDestructionCheck.cpp @@ -11,6 +11,7 @@ #include #include +#include #include diff --git a/sycl/unittests/helpers/PiMockPlugin.hpp b/sycl/unittests/helpers/PiMockPlugin.hpp index 23d1f8f24daae..5c1241ca0d49e 100644 --- a/sycl/unittests/helpers/PiMockPlugin.hpp +++ b/sycl/unittests/helpers/PiMockPlugin.hpp @@ -14,6 +14,7 @@ #include #include +#include #include #include