diff --git a/clang/test/CodeGenOpenCL/opaque-ptr-spirv.cl b/clang/test/CodeGenOpenCL/opaque-ptr-spirv.cl new file mode 100644 --- /dev/null +++ b/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 {{.*}}*