Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions sycl/plugins/unified_runtime/ur/adapters/hip/context.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@ urContextGetInfo(ur_context_handle_t hContext, ur_context_info_t propName,
UR_APIEXPORT ur_result_t UR_APICALL
urContextRelease(ur_context_handle_t hContext) {
if (hContext->decrementReferenceCount() == 0) {
hContext->invokeExtendedDeleters();
delete hContext;
}
return UR_RESULT_SUCCESS;
Expand Down
16 changes: 16 additions & 0 deletions sycl/test/extended_deleters/extended_deleters.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// RUN: %clangxx -fsycl %s -o %t.out
// RUN: %t.out | FileCheck %s

// CHECK: This extended deleter should be called at ctx destruction.

#include <sycl/sycl.hpp>

int main() {
sycl::context c;
sycl::detail::pi::contextSetExtendedDeleter(
c,
[](void *) {
printf("This extended deleter should be called at ctx destruction.");
},
nullptr);
}