mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-28 02:26:05 +00:00

The test was fixed after a discussion with the revision author: the check pattern was made more flexible as the "%call" part is not what we actually want to check strictly there. The original patch description: === Introduce SPIR calling conventions. This implements Section 3.7 from the SPIR 1.2 spec: SPIR kernels should use "spir_kernel" calling convention. Non-kernel functions use "spir_func" calling convention. All other calling conventions are disallowed. The patch works only for OpenCL source. Any other uses will need to ensure that kernels are assigned the spir_kernel calling convention correctly. === llvm-svn: 226561
19 lines
544 B
Common Lisp
19 lines
544 B
Common Lisp
// RUN: %clang_cc1 %s -triple "spir-unknown-unknown" -emit-llvm -o - | FileCheck %s
|
|
|
|
int get_dummy_id(int D);
|
|
|
|
kernel void bar(global int *A);
|
|
|
|
kernel void foo(global int *A)
|
|
// CHECK: define spir_kernel void @foo(i32 addrspace(1)* %A)
|
|
{
|
|
int id = get_dummy_id(0);
|
|
// CHECK: %{{[a-z0-9_]+}} = tail call spir_func i32 @get_dummy_id(i32 0)
|
|
A[id] = id;
|
|
bar(A);
|
|
// CHECK: tail call spir_kernel void @bar(i32 addrspace(1)* %A)
|
|
}
|
|
|
|
// CHECK: declare spir_func i32 @get_dummy_id(i32)
|
|
// CHECK: declare spir_kernel void @bar(i32 addrspace(1)*)
|