From b8996a88395ffefcf11bfee36f153c77d16c0836 Mon Sep 17 00:00:00 2001 From: Alexey Sachkov Date: Mon, 22 Sep 2025 17:38:31 +0200 Subject: [PATCH] [SYCL] Queue class ABI cleanup [1/N] This PR prepares for removal (once preview breaking changes are promoted) of the following queue APIs: - `ext_codeplay_supports_fusion` which has been hardcoded to `false` for a while now. It is also marked as deprecated by this PR - `device_has` internal API whose only use was dropped in #18310 --- sycl/include/sycl/queue.hpp | 6 ++++++ sycl/source/queue.cpp | 2 ++ 2 files changed, 8 insertions(+) diff --git a/sycl/include/sycl/queue.hpp b/sycl/include/sycl/queue.hpp index 3eb710f32ab60..30373ac53ad47 100644 --- a/sycl/include/sycl/queue.hpp +++ b/sycl/include/sycl/queue.hpp @@ -401,10 +401,12 @@ class __SYCL_EXPORT queue : public detail::OwnerLessBase { typename detail::is_backend_info_desc::return_type get_backend_info() const; +#ifndef __INTEL_PREVIEW_BREAKING_CHANGES private: // A shorthand for `get_device().has()' which is expected to be a bit quicker // than the long version bool device_has(aspect Aspect) const; +#endif public: /// Submits a command group function object to the queue, in order to be @@ -3453,6 +3455,7 @@ class __SYCL_EXPORT queue : public detail::OwnerLessBase { CodeLoc); } +#ifndef __INTEL_PREVIEW_BREAKING_CHANGES /// @brief Returns true if the queue was created with the /// ext::codeplay::experimental::property::queue::enable_fusion property. /// @@ -3460,7 +3463,10 @@ class __SYCL_EXPORT queue : public detail::OwnerLessBase { /// `has_property()`. /// // TODO(#15184) Remove this function in the next ABI-breaking window. + __SYCL_DEPRECATED( + "Support for ext_codeplay_kernel_fusion extesnsion is dropped") bool ext_codeplay_supports_fusion() const; +#endif /// Shortcut for executing a graph of commands. /// diff --git a/sycl/source/queue.cpp b/sycl/source/queue.cpp index b73c24091d4ed..f0b320cef69f8 100644 --- a/sycl/source/queue.cpp +++ b/sycl/source/queue.cpp @@ -453,6 +453,7 @@ event queue::memcpyFromDeviceGlobal(void *Dest, const void *DeviceGlobalPtr, /*CallerNeedsEvent=*/true); } +#ifndef __INTEL_PREVIEW_BREAKING_CHANGES bool queue::device_has(aspect Aspect) const { // avoid creating sycl object from impl return impl->getDeviceImpl().has(Aspect); @@ -460,6 +461,7 @@ bool queue::device_has(aspect Aspect) const { // TODO(#15184) Remove this function in the next ABI-breaking window. bool queue::ext_codeplay_supports_fusion() const { return false; } +#endif sycl::detail::optional queue::ext_oneapi_get_last_event_impl() const { if (!is_in_order())