Skip to content

Commit 7b5838c

Browse files
[NFC][SYCL][E2E] Trace urProgram* resources in Basic/interop/construction_ocl.cpp (#19565)
In preparation for #19557 and subsequent leak fix.
1 parent 121c876 commit 7b5838c

File tree

1 file changed

+29
-1
lines changed

1 file changed

+29
-1
lines changed

sycl/test-e2e/Basic/interop/construction_ocl.cpp

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,34 @@
11
// REQUIRES: opencl, opencl_icd
22
// RUN: %{build} %opencl_lib -o %t.ocl.out
3-
// RUN: %{run-unfiltered-devices} env ONEAPI_DEVICE_SELECTOR="opencl:*" %t.ocl.out
3+
// RUN: env SYCL_UR_TRACE=-1 ONEAPI_DEVICE_SELECTOR="opencl:*" %{run-unfiltered-devices} %t.ocl.out 2>&1 | FileCheck %s --implicit-check-not "<--- urProgramRelease"
4+
5+
// To check for leaks/document current ones:
6+
7+
// CHECK: <--- urProgramCreateWithIL{{.*}} .phProgram = {{.*}} ([[PROG0:.*]])) -> UR_RESULT_SUCCESS
8+
// CHECK: <--- urProgramRetain(.hProgram = [[PROG0]]) -> UR_RESULT_SUCCESS
9+
// CHECK: <--- urProgramCreateWithNativeHandle{{.*}} .phProgram = {{.*}} ([[PROG1:.*]])) -> UR_RESULT_SUCCESS
10+
// CHECK: <--- urProgramCreateWithNativeHandle{{.*}} .phProgram = {{.*}} ([[PROG2:.*]])) -> UR_RESULT_SUCCESS
11+
// CHECK: <--- urProgramCreateWithNativeHandle{{.*}} .phProgram = {{.*}} ([[PROG3:.*]])) -> UR_RESULT_SUCCESS
12+
// CHECK: <--- urProgramRelease(.hProgram = [[PROG3]]) -> UR_RESULT_SUCCESS
13+
// CHECK: <--- urProgramRelease(.hProgram = [[PROG2]]) -> UR_RESULT_SUCCESS
14+
// CHECK: <--- urProgramRelease(.hProgram = [[PROG1]]) -> UR_RESULT_SUCCESS
15+
// CHECK: <--- urProgramCreateWithNativeHandle{{.*}} .phProgram = {{.*}} ([[PROG4:.*]])) -> UR_RESULT_SUCCESS
16+
// CHECK: <--- urProgramCreateWithNativeHandle{{.*}} .phProgram = {{.*}} ([[PROG5:.*]])) -> UR_RESULT_SUCCESS
17+
// CHECK: <--- urProgramCreateWithNativeHandle{{.*}} .phProgram = {{.*}} ([[PROG6:.*]])) -> UR_RESULT_SUCCESS
18+
// CHECK: <--- urProgramLinkExp{{.*}} -> UR_RESULT_ERROR_UNSUPPORTED_FEATURE
19+
// CHECK: <--- urProgramLink{{.*}} .phProgram = {{.*}} ([[PROG7:.*]])) -> UR_RESULT_SUCCESS
20+
// CHECK: <--- urProgramRelease(.hProgram = [[PROG7]]) -> UR_RESULT_SUCCESS
21+
// CHECK: <--- urProgramRelease(.hProgram = [[PROG4]]) -> UR_RESULT_SUCCESS
22+
// CHECK: <--- urProgramCreateWithNativeHandle{{.*}}.phProgram = {{.*}} ([[PROG8:.*]])) -> UR_RESULT_SUCCESS
23+
// CHECK: <--- urProgramCreateWithNativeHandle{{.*}}.phProgram = {{.*}} ([[PROG9:.*]])) -> UR_RESULT_SUCCESS
24+
// CHECK: <--- urProgramCreateWithNativeHandle{{.*}}.phProgram = {{.*}} ([[PROG10:.*]])) -> UR_RESULT_SUCCESS
25+
// CHECK: <--- urProgramRelease(.hProgram = [[PROG8]]) -> UR_RESULT_SUCCESS
26+
// CHECK: <--- urProgramRelease(.hProgram = [[PROG0]]) -> UR_RESULT_SUCCESS
27+
// CHECK: <--- urProgramRelease(.hProgram = [[PROG0]]) -> UR_RESULT_SUCCESS
28+
29+
// 21 lines total, 8 releases, 1 unsuccessful
30+
// 12 create/link/retain, 8 release
31+
// Leaked: PROG5, PROG6, PROG9, PROG10
432

533
#include <CL/cl.h>
634
#include <sycl/backend.hpp>

0 commit comments

Comments
 (0)