diff --git a/sycl/doc/design/CompilerAndRuntimeDesign.md b/sycl/doc/design/CompilerAndRuntimeDesign.md index 6913b3197b6d6..d3960abe8ff26 100644 --- a/sycl/doc/design/CompilerAndRuntimeDesign.md +++ b/sycl/doc/design/CompilerAndRuntimeDesign.md @@ -890,9 +890,6 @@ The SPIR-V specific C++ enumerators and classes are declared in the file: The SPIR-V specific C++ function declarations are in the file: `sycl/include/CL/__spirv/spirv_ops.hpp`. -The SPIR-V specific functions are implemented in for the SYCL host device here: -`sycl/source/spirv_ops.cpp`. - ### Address spaces handling SYCL specification uses C++ classes to represent pointers to disjoint memory diff --git a/sycl/source/CMakeLists.txt b/sycl/source/CMakeLists.txt index 5d3069e402fdf..3bf2ed3964401 100644 --- a/sycl/source/CMakeLists.txt +++ b/sycl/source/CMakeLists.txt @@ -356,7 +356,6 @@ set(SYCL_COMMON_SOURCES ) set(SYCL_NON_PREVIEW_SOURCES "${SYCL_COMMON_SOURCES}" - "spirv_ops.cpp" ) diff --git a/sycl/source/ld-version-script.txt b/sycl/source/ld-version-script.txt index 910e1eec1e6c5..ac3899b6909fa 100644 --- a/sycl/source/ld-version-script.txt +++ b/sycl/source/ld-version-script.txt @@ -17,15 +17,6 @@ /* Some functions are also in __host_std, export them as well */ _ZN10__host_std*; - /* Export SPIR-V built-ins for host device */ - /* #ifndef __INTEL_PREVIEW_BREAKING_CHANGES */ - /* TODO: drop those in the next ABI-breaking window */ - _Z23__spirv_GroupWaitEvents*; - _Z22__spirv_ControlBarrier*; - _Z21__spirv_MemoryBarrier*; - _Z20__spirv_ocl_prefetch*; - /* #endif // __INTEL_PREVIEW_BREAKING_CHANGES */ - /* Export offload image hooks */ __sycl_register_lib; __sycl_unregister_lib; diff --git a/sycl/source/spirv_ops.cpp b/sycl/source/spirv_ops.cpp deleted file mode 100644 index a5a2de6d24ad5..0000000000000 --- a/sycl/source/spirv_ops.cpp +++ /dev/null @@ -1,47 +0,0 @@ -//===------------- spirv_ops.cpp - SPIRV operations -----------------------===// -// -// 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 -// -//===----------------------------------------------------------------------===// - -#include -#include -#include - -#include - -// This operation is NOP on HOST as all operations there are blocking and -// by the moment this function was called, the operations generating -// the __ocl_event_t objects had already been finished. -__SYCL_EXPORT void __spirv_GroupWaitEvents(__spv::Scope Execution, - uint32_t NumEvents, - __ocl_event_t *WaitEvents) noexcept { - (void)Execution; - (void)NumEvents; - (void)WaitEvents; -} - -__SYCL_EXPORT void __spirv_ControlBarrier(__spv::Scope Execution, - __spv::Scope Memory, - uint32_t Semantics) noexcept { - (void)Execution; - (void)Memory; - (void)Semantics; - std::cerr << "Barrier is not supported on the host device yet.\n"; - abort(); -} - -__SYCL_EXPORT void __spirv_MemoryBarrier(__spv::Scope Memory, - uint32_t Semantics) noexcept { - // 1. The 'Memory' parameter is ignored on HOST because there is no memory - // separation to global and local there. - // 2. The 'Semantics' parameter is ignored because there is no need - // to distinguish the classes of memory (workgroup/cross-workgroup/etc). - (void)Memory; - (void)Semantics; - atomic_thread_fence(std::memory_order_seq_cst); -} - -__SYCL_EXPORT void __spirv_ocl_prefetch(const char *, size_t) noexcept {} diff --git a/sycl/test/abi/sycl_symbols_linux.dump b/sycl/test/abi/sycl_symbols_linux.dump index 956fb7a053f96..d31af3c9348db 100644 --- a/sycl/test/abi/sycl_symbols_linux.dump +++ b/sycl/test/abi/sycl_symbols_linux.dump @@ -7,10 +7,6 @@ # REQUIRES: linux # UNSUPPORTED: libcxx -_Z20__spirv_ocl_prefetchPKcm -_Z21__spirv_MemoryBarrierN5__spv5ScopeEj -_Z22__spirv_ControlBarrierN5__spv5ScopeES0_j -_Z23__spirv_GroupWaitEventsN5__spv5ScopeEjPPv _ZN4sycl3_V110__abs_implENS0_3vecIaLi16EEE _ZN4sycl3_V110__abs_implENS0_3vecIaLi1EEE _ZN4sycl3_V110__abs_implENS0_3vecIaLi2EEE diff --git a/sycl/test/abi/sycl_symbols_windows.dump b/sycl/test/abi/sycl_symbols_windows.dump index 505ea8f7dfa3b..9070d8e98fff9 100644 --- a/sycl/test/abi/sycl_symbols_windows.dump +++ b/sycl/test/abi/sycl_symbols_windows.dump @@ -3440,10 +3440,6 @@ ?__smoothstep_impl@_V1@sycl@@YA?AVhalf@half_impl@detail@12@V34512@00@Z ?__smoothstep_impl@_V1@sycl@@YAMMMM@Z ?__smoothstep_impl@_V1@sycl@@YANNNN@Z -?__spirv_ControlBarrier@@YAXUScope@__spv@@0I@Z -?__spirv_GroupWaitEvents@@YAXUScope@__spv@@IPEAPEAX@Z -?__spirv_MemoryBarrier@@YAXUScope@__spv@@I@Z -?__spirv_ocl_prefetch@@YAXPEBD_K@Z ?__sqrt_impl@_V1@sycl@@YA?AV?$vec@M$00@12@V312@@Z ?__sqrt_impl@_V1@sycl@@YA?AV?$vec@M$01@12@V312@@Z ?__sqrt_impl@_V1@sycl@@YA?AV?$vec@M$02@12@V312@@Z