From 2e396bd950c525694aa4ed1e129161ff67a5f69c Mon Sep 17 00:00:00 2001 From: Andrei Elovikov Date: Thu, 23 May 2024 13:17:01 -0700 Subject: [PATCH] [SYCL] Delay inclusion of `sycl/types.hpp` in `core.hpp` Can't eliminate it completely until https://github.com/intel/llvm/pull/13760 is merged, but this PR brings us closer to that goal. --- .../sycl/ext/intel/experimental/task_sequence.hpp | 1 + .../sycl/ext/oneapi/experimental/prefetch.hpp | 1 + .../sycl/ext/oneapi/properties/properties.hpp | 2 +- sycl/include/sycl/sub_group.hpp | 3 +-- sycl/test/include_deps/sycl_detail_core.hpp.cpp | 12 ++++++------ 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/sycl/include/sycl/ext/intel/experimental/task_sequence.hpp b/sycl/include/sycl/ext/intel/experimental/task_sequence.hpp index 48f0a93b76bc..e4d39b1f73c6 100644 --- a/sycl/include/sycl/ext/intel/experimental/task_sequence.hpp +++ b/sycl/include/sycl/ext/intel/experimental/task_sequence.hpp @@ -10,6 +10,7 @@ #include #include +#include #include #include #include diff --git a/sycl/include/sycl/ext/oneapi/experimental/prefetch.hpp b/sycl/include/sycl/ext/oneapi/experimental/prefetch.hpp index 0ba414d3d075..06a9a509934e 100644 --- a/sycl/include/sycl/ext/oneapi/experimental/prefetch.hpp +++ b/sycl/include/sycl/ext/oneapi/experimental/prefetch.hpp @@ -10,6 +10,7 @@ #include #include +#include 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 d84d7fe200e4..2841a2925b3f 100644 --- a/sycl/include/sycl/ext/oneapi/properties/properties.hpp +++ b/sycl/include/sycl/ext/oneapi/properties/properties.hpp @@ -8,10 +8,10 @@ #pragma once +#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 diff --git a/sycl/include/sycl/sub_group.hpp b/sycl/include/sycl/sub_group.hpp index 4014087bd9d9..ef44c750d9e1 100644 --- a/sycl/include/sycl/sub_group.hpp +++ b/sycl/include/sycl/sub_group.hpp @@ -18,7 +18,6 @@ #include // for memory_scope #include // for multi_ptr #include // for range -#include // for vec #ifdef __SYCL_DEVICE_ONLY__ #include @@ -33,7 +32,7 @@ inline namespace _V1 { template class multi_ptr; - +template class vec; namespace detail { namespace sub_group { diff --git a/sycl/test/include_deps/sycl_detail_core.hpp.cpp b/sycl/test/include_deps/sycl_detail_core.hpp.cpp index 8d8836ab4077..8e0406259377 100644 --- a/sycl/test/include_deps/sycl_detail_core.hpp.cpp +++ b/sycl/test/include_deps/sycl_detail_core.hpp.cpp @@ -133,12 +133,6 @@ // CHECK-NEXT: nd_item.hpp // CHECK-NEXT: nd_range.hpp // CHECK-NEXT: sub_group.hpp -// CHECK-NEXT: types.hpp -// CHECK-NEXT: marray.hpp -// CHECK-NEXT: vector.hpp -// CHECK-NEXT: detail/memcpy.hpp -// CHECK-NEXT: detail/vector_convert.hpp -// CHECK-NEXT: swizzles.def // CHECK-NEXT: ext/oneapi/functional.hpp // CHECK-NEXT: detail/spirv.hpp // CHECK-NEXT: ext/oneapi/experimental/non_uniform_groups.hpp @@ -148,6 +142,12 @@ // CHECK-NEXT: builtins_utils_vec.hpp // CHECK-NEXT: builtins_utils_scalar.hpp // CHECK-NEXT: detail/boolean.hpp +// CHECK-NEXT: marray.hpp +// CHECK-NEXT: types.hpp +// CHECK-NEXT: vector.hpp +// CHECK-NEXT: detail/memcpy.hpp +// CHECK-NEXT: detail/vector_convert.hpp +// CHECK-NEXT: swizzles.def // CHECK-NEXT: detail/builtins/common_functions.inc // CHECK-NEXT: detail/builtins/helper_macros.hpp // CHECK-NEXT: detail/builtins/geometric_functions.inc