diff --git a/sycl/cmake/modules/UnifiedRuntimeTag.cmake b/sycl/cmake/modules/UnifiedRuntimeTag.cmake index b739ed6beadc8..7e5a4af334fd4 100644 --- a/sycl/cmake/modules/UnifiedRuntimeTag.cmake +++ b/sycl/cmake/modules/UnifiedRuntimeTag.cmake @@ -4,4 +4,4 @@ # Date: Thu Nov 7 11:43:19 2024 +0000 # Merge pull request #2233 from martygrant/martin/memory-cts-spec-gap-2 # Improvements to align CTS and Spec for Memory -set(UNIFIED_RUNTIME_TAG 09ae26af4e4e4301177db704b3b109ecd388c846) +set(UNIFIED_RUNTIME_TAG 09d658fe3dba98454e0eaec9cfac6cdfed7acbbf) diff --git a/sycl/include/sycl/ext/oneapi/properties/properties.hpp b/sycl/include/sycl/ext/oneapi/properties/properties.hpp index a06dacbaace57..5e8b77f893329 100644 --- a/sycl/include/sycl/ext/oneapi/properties/properties.hpp +++ b/sycl/include/sycl/ext/oneapi/properties/properties.hpp @@ -233,8 +233,7 @@ template class properties { template static constexpr auto get_property(typename std::enable_if_t< - detail::IsCompileTimeProperty::value && - !detail::IsRuntimeProperty::value> * = 0) { + detail::IsCompileTimeProperty::value> * = 0) { static_assert(has_property(), "Property list does not contain the requested property."); return detail::get_property(), diff --git a/sycl/include/sycl/ext/oneapi/properties/property.hpp b/sycl/include/sycl/ext/oneapi/properties/property.hpp index bfd4524afd3a0..c0a4791948208 100644 --- a/sycl/include/sycl/ext/oneapi/properties/property.hpp +++ b/sycl/include/sycl/ext/oneapi/properties/property.hpp @@ -241,7 +241,6 @@ struct property_base : property_tag { struct property_key_base_tag {}; struct compile_time_property_key_base_tag : property_key_base_tag {}; -struct run_time_property_key_base_tag : property_key_base_tag {}; template struct run_time_property_key : property_key_base_tag, @@ -273,7 +272,7 @@ template struct IsRuntimeProperty : std::bool_constant< std::is_base_of_v && - std::is_base_of_v> {}; + !std::is_base_of_v> {}; // Trait for identifying compile-time properties. template diff --git a/sycl/include/sycl/ext/oneapi/work_group_scratch_memory.hpp b/sycl/include/sycl/ext/oneapi/work_group_scratch_memory.hpp index 4f8f36b43bf60..a7e5d3f40ab34 100644 --- a/sycl/include/sycl/ext/oneapi/work_group_scratch_memory.hpp +++ b/sycl/include/sycl/ext/oneapi/work_group_scratch_memory.hpp @@ -28,24 +28,18 @@ inline void *get_work_group_scratch_memory() { } // Property -struct work_group_scratch_size_key - : ::sycl::ext::oneapi::experimental::detail::compile_time_property_key< - ::sycl::ext::oneapi::experimental::detail::WorkGroupStaticMem>, - property_value { - using value_t = property_value; -}; - struct work_group_scratch_size : ::sycl::ext::oneapi::experimental::detail::run_time_property_key< - ::sycl::ext::oneapi::experimental::detail::WorkGroupStaticMem>, - work_group_scratch_size_key { - using value_t = work_group_scratch_size_key::value_t; + work_group_scratch_size, + ::sycl::ext::oneapi::experimental::detail::WorkGroupStaticMem> { // Runtime property part constexpr work_group_scratch_size(size_t bytes) : size(bytes) {} size_t size; }; +using work_group_scratch_size_key = work_group_scratch_size; + template <> struct is_property_key : std::true_type {}; template <>