Anastasia created this revision. Anastasia added reviewers: svenvh, iliya-diyachkov. Herald added subscribers: ebevhan, yaxunl. Herald added a project: All. Anastasia requested review of this revision.
I would like to add this test case that enhances coverage of opaque pointers particularly for the problematic case with `extern` functions for which there is no solution found yet. https://reviews.llvm.org/D130768 Files: clang/test/CodeGenOpenCL/opaque-ptr-spirv.cl Index: clang/test/CodeGenOpenCL/opaque-ptr-spirv.cl =================================================================== --- /dev/null +++ clang/test/CodeGenOpenCL/opaque-ptr-spirv.cl @@ -0,0 +1,10 @@ +// RUN: %clang_cc1 -no-opaque-pointers -emit-llvm -o - -triple spirv64 %s | FileCheck %s + +// Check that we have a way to recover pointer +// types for extern function prototypes (see PR56660). +extern void foo(global int * ptr); +kernel void k(global int * ptr) { + foo(ptr); +} +//CHECK: define spir_kernel void @k(i32 {{.*}}* +//CHECK: declare spir_func void @foo(i32 {{.*}}*
Index: clang/test/CodeGenOpenCL/opaque-ptr-spirv.cl =================================================================== --- /dev/null +++ clang/test/CodeGenOpenCL/opaque-ptr-spirv.cl @@ -0,0 +1,10 @@ +// RUN: %clang_cc1 -no-opaque-pointers -emit-llvm -o - -triple spirv64 %s | FileCheck %s + +// Check that we have a way to recover pointer +// types for extern function prototypes (see PR56660). +extern void foo(global int * ptr); +kernel void k(global int * ptr) { + foo(ptr); +} +//CHECK: define spir_kernel void @k(i32 {{.*}}* +//CHECK: declare spir_func void @foo(i32 {{.*}}*
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits