From cbc4a88026371735faefb87e9ddbcebf6486e84c Mon Sep 17 00:00:00 2001 From: intwanghao Date: Wed, 9 Jul 2025 11:57:32 +0800 Subject: [PATCH 1/3] fix Signed-off-by: intwanghao --- .../DPCT/Driver/cuArray3DGetDescriptor.cu | 7 ++++ .../DPCT/Driver/cuArrayGetDescriptor.cu | 7 ++++ clang/examples/DPCT/Driver/cuCtxCreate_v3.cu | 6 ++++ clang/examples/DPCT/Driver/cuCtxCreate_v4.cu | 6 ++++ clang/examples/DPCT/Driver/cuGetErrorName.cu | 5 +++ .../DPCT/Driver/cuMipmappedArrayCreate.cu | 8 +++++ .../examples/DPCT/Guide/surf2DLayeredwrite.cu | 9 +++++ clang/examples/DPCT/Guide/surf2Dread.cu | 8 +++++ clang/examples/DPCT/Guide/surf2Dwrite.cu | 8 +++++ clang/examples/DPCT/Guide/surf3Dread.cu | 9 +++++ clang/examples/DPCT/Guide/surf3Dwrite.cu | 9 +++++ .../Driver/test-after12.4.cu | 14 ++++++++ .../dpct/query_api_mapping/Driver/test.cu | 27 ++++++++++++++ .../test/dpct/query_api_mapping/Guide/test.cu | 36 +++++++++++++++++++ clang/test/dpct/query_api_mapping/test_all.cu | 11 ++++++ 15 files changed, 170 insertions(+) create mode 100644 clang/examples/DPCT/Driver/cuArray3DGetDescriptor.cu create mode 100644 clang/examples/DPCT/Driver/cuArrayGetDescriptor.cu create mode 100644 clang/examples/DPCT/Driver/cuCtxCreate_v3.cu create mode 100644 clang/examples/DPCT/Driver/cuCtxCreate_v4.cu create mode 100644 clang/examples/DPCT/Driver/cuGetErrorName.cu create mode 100644 clang/examples/DPCT/Driver/cuMipmappedArrayCreate.cu create mode 100644 clang/examples/DPCT/Guide/surf2DLayeredwrite.cu create mode 100644 clang/examples/DPCT/Guide/surf2Dread.cu create mode 100644 clang/examples/DPCT/Guide/surf2Dwrite.cu create mode 100644 clang/examples/DPCT/Guide/surf3Dread.cu create mode 100644 clang/examples/DPCT/Guide/surf3Dwrite.cu create mode 100644 clang/test/dpct/query_api_mapping/Driver/test-after12.4.cu diff --git a/clang/examples/DPCT/Driver/cuArray3DGetDescriptor.cu b/clang/examples/DPCT/Driver/cuArray3DGetDescriptor.cu new file mode 100644 index 000000000000..4bd3053c7d84 --- /dev/null +++ b/clang/examples/DPCT/Driver/cuArray3DGetDescriptor.cu @@ -0,0 +1,7 @@ +// Option: --use-experimental-features=bindless_images + +void test(CUDA_ARRAY3D_DESCRIPTOR *desc, CUarray array) { + // Start + cuArray3DGetDescriptor(desc /*CUDA_ARRAY3D_DESCRIPTOR **/, array /*CUarray*/); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Driver/cuArrayGetDescriptor.cu b/clang/examples/DPCT/Driver/cuArrayGetDescriptor.cu new file mode 100644 index 000000000000..8c554fc188c5 --- /dev/null +++ b/clang/examples/DPCT/Driver/cuArrayGetDescriptor.cu @@ -0,0 +1,7 @@ +// Option: --use-experimental-features=bindless_images + +void test(CUDA_ARRAY_DESCRIPTOR *desc, CUarray array) { + // Start + cuArrayGetDescriptor(desc /*CUDA_ARRAY_DESCRIPTOR **/, array /*CUarray*/); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Driver/cuCtxCreate_v3.cu b/clang/examples/DPCT/Driver/cuCtxCreate_v3.cu new file mode 100644 index 000000000000..01bc2948c3c8 --- /dev/null +++ b/clang/examples/DPCT/Driver/cuCtxCreate_v3.cu @@ -0,0 +1,6 @@ +void test(CUcontext *ctx, CUexecAffinityParam *params_array, int num, + unsigned int flags, CUdevice device) { + // Start + cuCtxCreate_v3(ctx, params_array, num, flags, device); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Driver/cuCtxCreate_v4.cu b/clang/examples/DPCT/Driver/cuCtxCreate_v4.cu new file mode 100644 index 000000000000..4c7ec33f889e --- /dev/null +++ b/clang/examples/DPCT/Driver/cuCtxCreate_v4.cu @@ -0,0 +1,6 @@ +void test(CUcontext *ctx, CUctxCreateParams *params_array, unsigned int flags, + CUdevice device) { + // Start + cuCtxCreate_v4(ctx, params_array, flags, device); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Driver/cuGetErrorName.cu b/clang/examples/DPCT/Driver/cuGetErrorName.cu new file mode 100644 index 000000000000..472d44b78f8d --- /dev/null +++ b/clang/examples/DPCT/Driver/cuGetErrorName.cu @@ -0,0 +1,5 @@ +void test(CUresult r, const char **pstr) { + // Start + cuGetErrorName(r /*CUresult*/, pstr /*const char ***/); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Driver/cuMipmappedArrayCreate.cu b/clang/examples/DPCT/Driver/cuMipmappedArrayCreate.cu new file mode 100644 index 000000000000..3d66931bf85d --- /dev/null +++ b/clang/examples/DPCT/Driver/cuMipmappedArrayCreate.cu @@ -0,0 +1,8 @@ +// Option: --use-experimental-features=bindless_images + +void test(CUmipmappedArray *array, CUDA_ARRAY3D_DESCRIPTOR *desc, + unsigned int levels) { + // Start + cuMipmappedArrayCreate(array, desc, levels); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Guide/surf2DLayeredwrite.cu b/clang/examples/DPCT/Guide/surf2DLayeredwrite.cu new file mode 100644 index 000000000000..4e6853a1d15b --- /dev/null +++ b/clang/examples/DPCT/Guide/surf2DLayeredwrite.cu @@ -0,0 +1,9 @@ +// Option: --use-experimental-features=bindless_images +template +__global__ void test(float data, cudaSurfaceObject_t surf, int x, int y, + int layer) { + // Start + surf2DLayeredwrite(data /*float*/, surf /*cudaSurfaceObject_t*/, x /*int*/, + y /*int*/, layer /*int*/); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Guide/surf2Dread.cu b/clang/examples/DPCT/Guide/surf2Dread.cu new file mode 100644 index 000000000000..a7922f2f31aa --- /dev/null +++ b/clang/examples/DPCT/Guide/surf2Dread.cu @@ -0,0 +1,8 @@ +// Option: --use-experimental-features=bindless_images +template +__global__ void test(float data, cudaSurfaceObject_t surf, int x, int y) { + // Start + data /*float*/ = + surf2Dread(surf /*cudaSurfaceObject_t*/, x /*int*/, y /*int*/); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Guide/surf2Dwrite.cu b/clang/examples/DPCT/Guide/surf2Dwrite.cu new file mode 100644 index 000000000000..91c06b10d0cc --- /dev/null +++ b/clang/examples/DPCT/Guide/surf2Dwrite.cu @@ -0,0 +1,8 @@ +// Option: --use-experimental-features=bindless_images +template +__global__ void test(float data, cudaSurfaceObject_t surf, int x, int y) { + // Start + surf2Dwrite(data /*float*/, surf /*cudaSurfaceObject_t*/, x /*int*/, + y /*int*/); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Guide/surf3Dread.cu b/clang/examples/DPCT/Guide/surf3Dread.cu new file mode 100644 index 000000000000..ecd106e7ea61 --- /dev/null +++ b/clang/examples/DPCT/Guide/surf3Dread.cu @@ -0,0 +1,9 @@ +// Option: --use-experimental-features=bindless_images +template +__global__ void test(float data, cudaSurfaceObject_t surf, int x, int y, + int z) { + // Start + data /*float*/ = surf3Dread(surf /*cudaSurfaceObject_t*/, x /*int*/, + y /*int*/, z /*int*/); + // End +} \ No newline at end of file diff --git a/clang/examples/DPCT/Guide/surf3Dwrite.cu b/clang/examples/DPCT/Guide/surf3Dwrite.cu new file mode 100644 index 000000000000..17f8b6d552dd --- /dev/null +++ b/clang/examples/DPCT/Guide/surf3Dwrite.cu @@ -0,0 +1,9 @@ +// Option: --use-experimental-features=bindless_images +template +__global__ void test(float data, cudaSurfaceObject_t surf, int x, int y, + int z) { + // Start + surf3Dwrite(data /*float*/, surf /*cudaSurfaceObject_t*/, x /*int*/, + y /*int*/, z /*int*/); + // End +} \ No newline at end of file diff --git a/clang/test/dpct/query_api_mapping/Driver/test-after12.4.cu b/clang/test/dpct/query_api_mapping/Driver/test-after12.4.cu new file mode 100644 index 000000000000..02270306632b --- /dev/null +++ b/clang/test/dpct/query_api_mapping/Driver/test-after12.4.cu @@ -0,0 +1,14 @@ +// UNSUPPORTED: cuda-8.0, cuda-9.0, cuda-9.1, cuda-9.2, cuda-10.0, cuda-10.1, cuda-10.2, cuda-11.0, cuda-11.1, cuda-11.2, cuda-11.3, cuda-11.4, cuda-11.5, cuda-11.6, cuda-11.7, cuda-11.8, cuda-12.0, cuda-12.1, cuda-12.2, cuda-12.3, cuda-12.4 +// UNSUPPORTED: v8.0, v9.0, v9.1, v9.2, v10.0, v10.1, v10.2, v11.0, v11.1, v11.2, v11.3, v11.4, v11.5, v11.6, v11.7, v11.8, v12.0, v12.1, v12.2, v12.3, v12.4 + +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuCtxCreate_v3 | FileCheck %s -check-prefix=CUCTXCREATE_V3 +// CUCTXCREATE_V3: CUDA API: +// CUCTXCREATE_V3-NEXT: cuCtxCreate_v3(ctx, params_array, num, flags, device); +// CUCTXCREATE_V3-NEXT: Is migrated to: +// CUCTXCREATE_V3-NEXT: *ctx = dpct::push_device_for_curr_thread(device); + +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuCtxCreate_v4 | FileCheck %s -check-prefix=CUCTXCREATE_V4 +// CUCTXCREATE_V4: CUDA API: +// CUCTXCREATE_V4-NEXT: cuCtxCreate_v4(ctx, params_array, flags, device); +// CUCTXCREATE_V4-NEXT: Is migrated to: +// CUCTXCREATE_V4-NEXT: *ctx = dpct::push_device_for_curr_thread(device); diff --git a/clang/test/dpct/query_api_mapping/Driver/test.cu b/clang/test/dpct/query_api_mapping/Driver/test.cu index ae871f9af460..17a21d416399 100644 --- a/clang/test/dpct/query_api_mapping/Driver/test.cu +++ b/clang/test/dpct/query_api_mapping/Driver/test.cu @@ -9,6 +9,15 @@ // CUGETERRORSTRING-NEXT: */ // CUGETERRORSTRING-NEXT: *ppc = dpct::get_error_string_dummy(r); +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuGetErrorName | FileCheck %s -check-prefix=CUGETERRORNAME +// CUGETERRORNAME: CUDA API: +// CUGETERRORNAME-NEXT: cuGetErrorName(r /*CUresult*/, pstr /*const char ***/); +// CUGETERRORNAME-NEXT: Is migrated to: +// CUGETERRORNAME-NEXT: /* +// CUGETERRORNAME-NEXT: DPCT1009:0: SYCL reports errors using exceptions and does not use error codes. Please replace the "get_error_string_dummy(...)" with a real error-handling function. +// CUGETERRORNAME-NEXT: */ +// CUGETERRORNAME-NEXT: *pstr = dpct::get_error_string_dummy(r); + /// Initialization // RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuInit | FileCheck %s -check-prefix=CUINIT @@ -441,6 +450,24 @@ // CUTEXREFGETADDRESSMODE-NEXT: dpct::image_wrapper_base_p t; // CUTEXREFGETADDRESSMODE-NEXT: *pa = t->get_addressing_mode(); +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuArray3DGetDescriptor | FileCheck %s -check-prefix=CUARRAY3DGETDESCRIPTOR +// CUARRAY3DGETDESCRIPTOR: CUDA API: +// CUARRAY3DGETDESCRIPTOR-NEXT: cuArray3DGetDescriptor(desc /*CUDA_ARRAY3D_DESCRIPTOR **/, array /*CUarray*/); +// CUARRAY3DGETDESCRIPTOR-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): +// CUARRAY3DGETDESCRIPTOR-NEXT: *desc = array->get_desc(); + +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuArrayGetDescriptor | FileCheck %s -check-prefix=CUARRAYGETDESCRIPTOR +// CUARRAYGETDESCRIPTOR: CUDA API: +// CUARRAYGETDESCRIPTOR-NEXT: cuArrayGetDescriptor(desc /*CUDA_ARRAY_DESCRIPTOR **/, array /*CUarray*/); +// CUARRAYGETDESCRIPTOR-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): +// CUARRAYGETDESCRIPTOR-NEXT: *desc = array->get_desc(); + +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuMipmappedArrayCreate | FileCheck %s -check-prefix=CUMIPMAPPEDARRAYCREATE +// CUMIPMAPPEDARRAYCREATE: CUDA API: +// CUMIPMAPPEDARRAYCREATE-NEXT: cuMipmappedArrayCreate(array, desc, levels); +// CUMIPMAPPEDARRAYCREATE-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): +// CUMIPMAPPEDARRAYCREATE-NEXT: *array = new dpct::experimental::image_mem_wrapper(*desc, levels); + // RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuTexRefGetFilterMode | FileCheck %s -check-prefix=CUTEXREFGETFILTERMODE // CUTEXREFGETFILTERMODE: CUDA API: // CUTEXREFGETFILTERMODE-NEXT: CUtexref t; diff --git a/clang/test/dpct/query_api_mapping/Guide/test.cu b/clang/test/dpct/query_api_mapping/Guide/test.cu index ed297eab73f7..3c377537b24d 100644 --- a/clang/test/dpct/query_api_mapping/Guide/test.cu +++ b/clang/test/dpct/query_api_mapping/Guide/test.cu @@ -80,6 +80,42 @@ // TEX2DLOD-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): // TEX2DLOD-NEXT: sycl::ext::oneapi::experimental::sample_mipmap(t, sycl::float2(f1, f2), f3); +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=surf2DLayeredwrite | FileCheck %s -check-prefix=SURF2DLAYEREDWRITE +// SURF2DLAYEREDWRITE: CUDA API: +// SURF2DLAYEREDWRITE-NEXT: surf2DLayeredwrite(data /*float*/, surf /*cudaSurfaceObject_t*/, x /*int*/, +// SURF2DLAYEREDWRITE-NEXT: y /*int*/, layer /*int*/); +// SURF2DLAYEREDWRITE-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): +// SURF2DLAYEREDWRITE-NEXT: sycl::ext::oneapi::experimental::write_image_array(surf, sycl::int2(x / sizeof(data), y), layer, data); + +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=surf2Dread | FileCheck %s -check-prefix=SURF2DREAD +// SURF2DREAD: CUDA API: +// SURF2DREAD-NEXT: data /*float*/ = +// SURF2DREAD-NEXT: surf2Dread(surf /*cudaSurfaceObject_t*/, x /*int*/, y /*int*/); +// SURF2DREAD-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): +// SURF2DREAD-NEXT: data /*float*/ = +// SURF2DREAD-NEXT: dpct::experimental::fetch_image_by_byte(surf, sycl::int2(x, y)); + +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=surf2Dwrite | FileCheck %s -check-prefix=SURF2DWRITE +// SURF2DWRITE: CUDA API: +// SURF2DWRITE-NEXT: surf2Dwrite(data /*float*/, surf /*cudaSurfaceObject_t*/, x /*int*/, +// SURF2DWRITE-NEXT: y /*int*/); +// SURF2DWRITE-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): +// SURF2DWRITE-NEXT: sycl::ext::oneapi::experimental::write_image(surf, sycl::int2(x / sizeof(data), y), data); + +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=surf3Dread | FileCheck %s -check-prefix=SURF3DREAD +// SURF3DREAD: CUDA API: +// SURF3DREAD-NEXT: data /*float*/ = surf3Dread(surf /*cudaSurfaceObject_t*/, x /*int*/, +// SURF3DREAD-NEXT: y /*int*/, z /*int*/); +// SURF3DREAD-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): +// SURF3DREAD-NEXT: data /*float*/ = dpct::experimental::fetch_image_by_byte(surf, sycl::int3(x, y, z)); + +// RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=surf3Dwrite | FileCheck %s -check-prefix=SURF3DWRITE +// SURF3DWRITE: CUDA API: +// SURF3DWRITE-NEXT: surf3Dwrite(data /*float*/, surf /*cudaSurfaceObject_t*/, x /*int*/, +// SURF3DWRITE-NEXT: y /*int*/, z /*int*/); +// SURF3DWRITE-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): +// SURF3DWRITE-NEXT: sycl::ext::oneapi::experimental::write_image(surf, sycl::int3(x / sizeof(data), y, z), data); + // RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=tex3D | FileCheck %s -check-prefix=TEX3D // TEX3D: CUDA API: // TEX3D-NEXT: tex3D(t /*cudaTextureObject_t*/, f1 /*float*/, f2 /*float*/, f3 /*float*/); diff --git a/clang/test/dpct/query_api_mapping/test_all.cu b/clang/test/dpct/query_api_mapping/test_all.cu index e52eff4a8f5e..81e584dac2dc 100644 --- a/clang/test/dpct/query_api_mapping/test_all.cu +++ b/clang/test/dpct/query_api_mapping/test_all.cu @@ -677,8 +677,10 @@ // CHECK-NEXT: cospi // CHECK-NEXT: cospif // CHECK-NEXT: cuArray3DCreate +// CHECK-NEXT: cuArray3DGetDescriptor // CHECK-NEXT: cuArrayCreate // CHECK-NEXT: cuArrayDestroy +// CHECK-NEXT: cuArrayGetDescriptor // CHECK-NEXT: cuCabs // CHECK-NEXT: cuCabsf // CHECK-NEXT: cuCadd @@ -700,6 +702,8 @@ // CHECK-NEXT: cuCsub // CHECK-NEXT: cuCsubf // CHECK-NEXT: cuCtxCreate +// CHECK-NEXT: cuCtxCreate_v3 +// CHECK-NEXT: cuCtxCreate_v4 // CHECK-NEXT: cuCtxDestroy // CHECK-NEXT: cuCtxEnablePeerAccess // CHECK-NEXT: cuCtxGetApiVersion @@ -737,6 +741,7 @@ // CHECK-NEXT: cuFuncGetAttribute // CHECK-NEXT: cuFuncSetAttribute // CHECK-NEXT: cuFuncSetCacheConfig +// CHECK-NEXT: cuGetErrorName // CHECK-NEXT: cuGetErrorString // CHECK-NEXT: cuGraphicsMapResources // CHECK-NEXT: cuGraphicsResourceGetMappedPointer @@ -802,6 +807,7 @@ // CHECK-NEXT: cuMemsetD32Async // CHECK-NEXT: cuMemsetD8 // CHECK-NEXT: cuMemsetD8Async +// CHECK-NEXT: cuMipmappedArrayCreate // CHECK-NEXT: cuModuleGetFunction // CHECK-NEXT: cuModuleGetTexRef // CHECK-NEXT: cuModuleLoad @@ -2409,6 +2415,11 @@ // CHECK-NEXT: skipahead_subsequence // CHECK-NEXT: sqrt // CHECK-NEXT: sqrtf +// CHECK-NEXT: surf2DLayeredwrite +// CHECK-NEXT: surf2Dread +// CHECK-NEXT: surf2Dwrite +// CHECK-NEXT: surf3Dread +// CHECK-NEXT: surf3Dwrite // CHECK-NEXT: tan // CHECK-NEXT: tanf // CHECK-NEXT: tanh From 138dfabb3a91ee781899187a7b24285c0793309e Mon Sep 17 00:00:00 2001 From: "hao3.wang" Date: Thu, 10 Jul 2025 10:32:57 +0800 Subject: [PATCH 2/3] fix Signed-off-by: intwanghao --- clang/examples/DPCT/Driver/cuCtxCreate_v3.cu | 2 +- clang/examples/DPCT/Driver/cuCtxCreate_v4.cu | 2 +- clang/examples/DPCT/Driver/cuMipmappedArrayCreate.cu | 2 +- clang/test/dpct/query_api_mapping/Driver/test-after12.4.cu | 4 ++-- clang/test/dpct/query_api_mapping/Driver/test.cu | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/clang/examples/DPCT/Driver/cuCtxCreate_v3.cu b/clang/examples/DPCT/Driver/cuCtxCreate_v3.cu index 01bc2948c3c8..14bc03f7d6bf 100644 --- a/clang/examples/DPCT/Driver/cuCtxCreate_v3.cu +++ b/clang/examples/DPCT/Driver/cuCtxCreate_v3.cu @@ -1,6 +1,6 @@ void test(CUcontext *ctx, CUexecAffinityParam *params_array, int num, unsigned int flags, CUdevice device) { // Start - cuCtxCreate_v3(ctx, params_array, num, flags, device); + cuCtxCreate_v3(ctx /*CUcontext **/, params_array /*CUexecAffinityParam **/, num /*int*/, flags /*unsigned int*/, device /*CUdevice*/); // End } \ No newline at end of file diff --git a/clang/examples/DPCT/Driver/cuCtxCreate_v4.cu b/clang/examples/DPCT/Driver/cuCtxCreate_v4.cu index 4c7ec33f889e..e2e7fc4fc337 100644 --- a/clang/examples/DPCT/Driver/cuCtxCreate_v4.cu +++ b/clang/examples/DPCT/Driver/cuCtxCreate_v4.cu @@ -1,6 +1,6 @@ void test(CUcontext *ctx, CUctxCreateParams *params_array, unsigned int flags, CUdevice device) { // Start - cuCtxCreate_v4(ctx, params_array, flags, device); + cuCtxCreate_v4(ctx /*CUcontext **/, params_array /*CUctxCreateParams **/, flags /*unsigned int*/, device /*CUdevice*/); // End } \ No newline at end of file diff --git a/clang/examples/DPCT/Driver/cuMipmappedArrayCreate.cu b/clang/examples/DPCT/Driver/cuMipmappedArrayCreate.cu index 3d66931bf85d..8e51e5c919d8 100644 --- a/clang/examples/DPCT/Driver/cuMipmappedArrayCreate.cu +++ b/clang/examples/DPCT/Driver/cuMipmappedArrayCreate.cu @@ -3,6 +3,6 @@ void test(CUmipmappedArray *array, CUDA_ARRAY3D_DESCRIPTOR *desc, unsigned int levels) { // Start - cuMipmappedArrayCreate(array, desc, levels); + cuMipmappedArrayCreate(array /*CUmipmappedArray **/, desc /*CUDA_ARRAY3D_DESCRIPTOR **/, levels /*unsigned int*/); // End } \ No newline at end of file diff --git a/clang/test/dpct/query_api_mapping/Driver/test-after12.4.cu b/clang/test/dpct/query_api_mapping/Driver/test-after12.4.cu index 02270306632b..1e2bf0c9f1ef 100644 --- a/clang/test/dpct/query_api_mapping/Driver/test-after12.4.cu +++ b/clang/test/dpct/query_api_mapping/Driver/test-after12.4.cu @@ -3,12 +3,12 @@ // RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuCtxCreate_v3 | FileCheck %s -check-prefix=CUCTXCREATE_V3 // CUCTXCREATE_V3: CUDA API: -// CUCTXCREATE_V3-NEXT: cuCtxCreate_v3(ctx, params_array, num, flags, device); +// CUCTXCREATE_V3-NEXT: cuCtxCreate_v3(ctx /*CUcontext **/, params_array /*CUexecAffinityParam **/, num /*int*/, flags /*unsigned int*/, device /*CUdevice*/); // CUCTXCREATE_V3-NEXT: Is migrated to: // CUCTXCREATE_V3-NEXT: *ctx = dpct::push_device_for_curr_thread(device); // RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuCtxCreate_v4 | FileCheck %s -check-prefix=CUCTXCREATE_V4 // CUCTXCREATE_V4: CUDA API: -// CUCTXCREATE_V4-NEXT: cuCtxCreate_v4(ctx, params_array, flags, device); +// CUCTXCREATE_V4-NEXT: cuCtxCreate_v4(ctx /*CUcontext **/, params_array /*CUctxCreateParams **/, flags /*unsigned int*/, device /*CUdevice*/); // CUCTXCREATE_V4-NEXT: Is migrated to: // CUCTXCREATE_V4-NEXT: *ctx = dpct::push_device_for_curr_thread(device); diff --git a/clang/test/dpct/query_api_mapping/Driver/test.cu b/clang/test/dpct/query_api_mapping/Driver/test.cu index 17a21d416399..003b6f30e5e7 100644 --- a/clang/test/dpct/query_api_mapping/Driver/test.cu +++ b/clang/test/dpct/query_api_mapping/Driver/test.cu @@ -464,7 +464,7 @@ // RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuMipmappedArrayCreate | FileCheck %s -check-prefix=CUMIPMAPPEDARRAYCREATE // CUMIPMAPPEDARRAYCREATE: CUDA API: -// CUMIPMAPPEDARRAYCREATE-NEXT: cuMipmappedArrayCreate(array, desc, levels); +// CUMIPMAPPEDARRAYCREATE-NEXT: cuMipmappedArrayCreate(array /*CUmipmappedArray **/, desc /*CUDA_ARRAY3D_DESCRIPTOR **/, levels /*unsigned int*/); // CUMIPMAPPEDARRAYCREATE-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): // CUMIPMAPPEDARRAYCREATE-NEXT: *array = new dpct::experimental::image_mem_wrapper(*desc, levels); From deb6a5fe78bbc0db883adbfe6044a8a1d97ce46f Mon Sep 17 00:00:00 2001 From: intwanghao Date: Thu, 10 Jul 2025 13:58:24 +0800 Subject: [PATCH 3/3] fix Signed-off-by: intwanghao --- clang/test/dpct/query_api_mapping/Driver/test.cu | 4 ++-- clang/test/dpct/query_api_mapping/test_all.cu | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/clang/test/dpct/query_api_mapping/Driver/test.cu b/clang/test/dpct/query_api_mapping/Driver/test.cu index a0949124a9b1..2455ef9b3fcf 100644 --- a/clang/test/dpct/query_api_mapping/Driver/test.cu +++ b/clang/test/dpct/query_api_mapping/Driver/test.cu @@ -600,7 +600,7 @@ // RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuMipmappedArrayGetLevel | FileCheck %s -check-prefix=CUMIPMAPPEDARRAYGETLEVEL // CUMIPMAPPEDARRAYGETLEVEL: CUDA API: -// CUMIPMAPPEDARRAYGETLEVEL-NEXT: cuMipmappedArrayGetLevel(&level_arr/*CUarray*/, mmArray/*CUmipmappedArray*/, 1/*level*/); +// CUMIPMAPPEDARRAYGETLEVEL-NEXT: cuMipmappedArrayGetLevel(&level_arr/*CUarray **/, mmArray/*CUmipmappedArray*/, 1/*unsigned int*/); // CUMIPMAPPEDARRAYGETLEVEL-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): // CUMIPMAPPEDARRAYGETLEVEL-NEXT: level_arr = mmArray->get_mip_level(1); @@ -618,7 +618,7 @@ // RUN: dpct --cuda-include-path="%cuda-path/include" --query-api-mapping=cuTexRefGetArray | FileCheck %s -check-prefix=CUTEXREFGETARRAY // CUTEXREFGETARRAY: CUDA API: -// CUTEXREFGETARRAY-NEXT: cuTexRefGetArray(phArray /*CUarray **/, hTexRef /*CUtexref*/); +// CUTEXREFGETARRAY-NEXT: cuTexRefGetArray(&a/*CUarray **/, r/*CUtexref*/); // CUTEXREFGETARRAY-NEXT: Is migrated to (with the option --use-experimental-features=bindless_images): // CUTEXREFGETARRAY-NEXT: a = dpct::experimental::get_img_mem(r); diff --git a/clang/test/dpct/query_api_mapping/test_all.cu b/clang/test/dpct/query_api_mapping/test_all.cu index 57abfcc529fd..282d160017d5 100644 --- a/clang/test/dpct/query_api_mapping/test_all.cu +++ b/clang/test/dpct/query_api_mapping/test_all.cu @@ -1501,6 +1501,13 @@ // CHECK-NEXT: cudaGraphAddDependencies // CHECK-NEXT: cudaGraphAddEmptyNode // CHECK-NEXT: cudaGraphDestroy +// CHECK-NEXT: cudaGraphExecDestroy +// CHECK-NEXT: cudaGraphExecUpdate +// CHECK-NEXT: cudaGraphGetNodes +// CHECK-NEXT: cudaGraphGetRootNodes +// CHECK-NEXT: cudaGraphInstantiate +// CHECK-NEXT: cudaGraphLaunch +// CHECK-NEXT: cudaGraphNodeGetType // CHECK-NEXT: cudaGraphicsD3D11RegisterResource // CHECK-NEXT: cudaGraphicsMapResources // CHECK-NEXT: cudaGraphicsResourceGetMappedMipmappedArray @@ -2439,6 +2446,8 @@ // CHECK-NEXT: skipahead_subsequence // CHECK-NEXT: sqrt // CHECK-NEXT: sqrtf +// CHECK-NEXT: surf1Dread +// CHECK-NEXT: surf1Dwrite // CHECK-NEXT: surf2DLayeredwrite // CHECK-NEXT: surf2Dread // CHECK-NEXT: surf2Dwrite @@ -2449,9 +2458,11 @@ // CHECK-NEXT: tanh // CHECK-NEXT: tanhf // CHECK-NEXT: tex1D +// CHECK-NEXT: tex1DLayered // CHECK-NEXT: tex1DLod // CHECK-NEXT: tex1Dfetch // CHECK-NEXT: tex2D +// CHECK-NEXT: tex2DLayered // CHECK-NEXT: tex2DLod // CHECK-NEXT: tex3D // CHECK-NEXT: tex3DLod