20 lines · c
1// RUN: %clang_cc1 -triple spirv64-intel %s -emit-llvm -o - | FileCheck -check-prefixes=CHECK-WITH,CHECK-WITH-64 %s2// RUN: %clang_cc1 -triple spirv32-intel %s -emit-llvm -o - | FileCheck -check-prefixes=CHECK-WITH,CHECK-WITH-32 %s3// RUN: %clang_cc1 -triple spir-intel %s -emit-llvm -o - | FileCheck -check-prefix=CHECK-WITHOUT %s4// RUN: %clang_cc1 -triple spir64-intel %s -emit-llvm -o - | FileCheck -check-prefix=CHECK-WITHOUT %s5 6// CHECK-WITH-64: spir_func void @foo(ptr addrspace(4) noundef %param) addrspace(9) #0 {7// CHECK-WITH-32: spir_func void @foo(ptr addrspace(4) noundef %param) #0 {8 9// CHECK-WITHOUT: spir_func void @foo(ptr noundef %param) #0 {10void foo(int *param) {11}12 13typedef __attribute__((address_space(9))) void * FnPtrTy;14 15// CHECK-WITH: %{{.*}} = icmp eq ptr addrspace(9) %{{.*}}, null16int bar() {17 FnPtrTy FnPtr = (FnPtrTy)foo;18 return FnPtr == 0;19}20