|
1 | 1 | // REQUIRES: opencl, opencl_icd
|
2 | 2 | // 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 |
4 | 32 |
|
5 | 33 | #include <CL/cl.h>
|
6 | 34 | #include <sycl/backend.hpp>
|
|
0 commit comments