Skip to content

Commit 2dc6579

Browse files
committed
clang: Switch SYCL test to generated checks
1 parent 557299c commit 2dc6579

File tree

1 file changed

+35
-5
lines changed

1 file changed

+35
-5
lines changed
Lines changed: 35 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,29 @@
1+
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --check-globals --version 3
12
// RUN: %clang_cc1 -fsycl-is-device -emit-llvm -disable-llvm-passes \
2-
// RUN: -triple spir64 -fexceptions -emit-llvm %s -o - | FileCheck %s
3+
// RUN: -triple spir64 -fexceptions -emit-llvm -fno-ident %s -o - | FileCheck %s
34

45
int foo();
56

6-
// CHECK: define dso_local spir_func void @_Z3barv() [[BAR:#[0-9]+]]
7-
// CHECK: attributes [[BAR]] =
8-
// CHECK-SAME: convergent
9-
// CHECK-SAME: nounwind
7+
// CHECK-LABEL: define dso_local spir_func void @_Z3barv(
8+
// CHECK-SAME: ) #[[ATTR0:[0-9]+]] {
9+
// CHECK-NEXT: entry:
10+
// CHECK-NEXT: [[A:%.*]] = alloca i32, align 4
11+
// CHECK-NEXT: [[A_ASCAST:%.*]] = addrspacecast ptr [[A]] to ptr addrspace(4)
12+
// CHECK-NEXT: [[CALL:%.*]] = call spir_func noundef i32 @_Z3foov() #[[ATTR1:[0-9]+]]
13+
// CHECK-NEXT: store i32 [[CALL]], ptr addrspace(4) [[A_ASCAST]], align 4
14+
// CHECK-NEXT: ret void
15+
//
1016
void bar() {
1117
int a = foo();
1218
}
1319

20+
// CHECK-LABEL: define dso_local spir_func noundef i32 @_Z3foov(
21+
// CHECK-SAME: ) #[[ATTR0]] {
22+
// CHECK-NEXT: entry:
23+
// CHECK-NEXT: [[RETVAL:%.*]] = alloca i32, align 4
24+
// CHECK-NEXT: [[RETVAL_ASCAST:%.*]] = addrspacecast ptr [[RETVAL]] to ptr addrspace(4)
25+
// CHECK-NEXT: ret i32 1
26+
//
1427
int foo() {
1528
return 1;
1629
}
@@ -20,7 +33,24 @@ __attribute__((sycl_kernel)) void kernel_single_task(const Func &kernelFunc) {
2033
kernelFunc();
2134
}
2235

36+
// CHECK-LABEL: define dso_local noundef i32 @main(
37+
// CHECK-SAME: ) #[[ATTR0]] {
38+
// CHECK-NEXT: entry:
39+
// CHECK-NEXT: [[RETVAL:%.*]] = alloca i32, align 4
40+
// CHECK-NEXT: [[REF_TMP:%.*]] = alloca [[CLASS_ANON:%.*]], align 1
41+
// CHECK-NEXT: [[RETVAL_ASCAST:%.*]] = addrspacecast ptr [[RETVAL]] to ptr addrspace(4)
42+
// CHECK-NEXT: [[REF_TMP_ASCAST:%.*]] = addrspacecast ptr [[REF_TMP]] to ptr addrspace(4)
43+
// CHECK-NEXT: store i32 0, ptr addrspace(4) [[RETVAL_ASCAST]], align 4
44+
// CHECK-NEXT: call spir_func void @_Z18kernel_single_taskIZ4mainE11fake_kernelZ4mainEUlvE_EvRKT0_(ptr addrspace(4) noundef align 1 dereferenceable(1) [[REF_TMP_ASCAST]]) #[[ATTR1]]
45+
// CHECK-NEXT: ret i32 0
46+
//
2347
int main() {
2448
kernel_single_task<class fake_kernel>([] { bar(); });
2549
return 0;
2650
}
51+
//.
52+
// CHECK: attributes #0 = { convergent mustprogress noinline norecurse nounwind optnone "no-trapping-math"="true" "stack-protector-buffer-size"="8" }
53+
// CHECK: attributes #1 = { convergent nounwind }
54+
//.
55+
// CHECK: !0 = !{i32 1, !"wchar_size", i32 4}
56+
//.

0 commit comments

Comments
 (0)