[llvm] [libsycl] implement methods of synchronization in event and queue classes (PR #205860)
Sergey Semenov via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 3 11:18:57 PDT 2026
================
@@ -22,4 +25,30 @@ void event::wait(const std::vector<event> &EventList) {
void event::wait() { impl->wait(); }
+void event::wait_and_throw() { impl->waitAndThrow(); }
+
+void event::wait_and_throw(const std::vector<event> &EventList) {
+ for (auto E : EventList) {
+ E.wait_and_throw();
+ }
+}
+
+std::vector<event> event::get_wait_list() {
+ const auto &WaitList = impl->getWaitList();
+ std::vector<event> Result;
+ Result.reserve(WaitList.size());
+
+ for (const auto &EventImpl : WaitList)
+ Result.push_back(detail::createSyclObjFromImpl<event>(EventImpl));
+
+ return Result;
+}
+
+template <typename Param>
+typename detail::is_event_profiling_info_desc_t<Param>
+event::get_profiling_info() const {
+ throw sycl::exception(make_error_code(errc::feature_not_supported),
+ "Profiling features are not supported.");
+}
----------------
sergey-semenov wrote:
If it's intentional, what's the point of providing the function body at all? I would prefer to see a compilation or runtime error here while this is not implemented, not an undefined reference one.
https://github.com/llvm/llvm-project/pull/205860
More information about the llvm-commits
mailing list