File tree Expand file tree Collapse file tree 3 files changed +6
-7
lines changed Expand file tree Collapse file tree 3 files changed +6
-7
lines changed Original file line number Diff line number Diff line change @@ -50,7 +50,8 @@ void processSetKernelPropertiesCall(CallInst &CI) {
50
50
GraphNode->addFnAttr (::sycl::kernel_props::ATTR_LARGE_GRF);
51
51
// Add RegisterAllocMode metadata with arg 2 to the kernel to tell
52
52
// IGC to compile this kernel in large GRF mode. 2 means large.
53
- if (GraphNode->getCallingConv () == CallingConv::SPIR_KERNEL) {
53
+ if (GraphNode->getCallingConv () == CallingConv::SPIR_KERNEL &&
54
+ !GraphNode->hasMetadata (" sycl_explicit_simd" )) {
54
55
auto &Ctx = GraphNode->getContext ();
55
56
Metadata *AttrMDArgs[] = {ConstantAsMetadata::get (
56
57
Constant::getIntegerValue (Type::getInt32Ty (Ctx), APInt (32 , 2 )))};
Original file line number Diff line number Diff line change 5
5
; - remove the intrinsic call
6
6
; - mark the kernel with corresponding attribute (only "large-grf" for now)
7
7
8
- ; RUN: opt -passes=lower-kernel-props -S %s -o - | FileCheck %s
8
+ ; RUN: opt -passes=lower-kernel-props -S %s -o - | FileCheck %s --implicit-check-not='RegisterAllocMode'
9
9
10
10
; ModuleID = 'large_grf.bc'
11
11
source_filename = "llvm-link"
@@ -33,8 +33,7 @@ define weak_odr dso_local spir_kernel void @__large_grf_kernel1() !sycl_explicit
33
33
34
34
; -- This kernel calls the marker function directly
35
35
define weak_odr dso_local spir_kernel void @__large_grf_kernel2 () #0 !sycl_explicit_simd !0 !intel_reqd_sub_group_size !1 {
36
- ; CHECK: {{.*}} spir_kernel void @__large_grf_kernel2() #0 {{.*}} !RegisterAllocMode ![[MetadataArg:[0-9]+]]
37
- ; CHECK: ![[MetadataArg]] = !{i32 2}
36
+ ; CHECK: {{.*}} spir_kernel void @__large_grf_kernel2() #0 {{.*}}
38
37
call spir_func void @_Z28__sycl_set_kernel_propertiesi (i32 noundef 0 )
39
38
ret void
40
39
}
Original file line number Diff line number Diff line change 9
9
10
10
; RUN: sycl-post-link -split=source -symbols -split-esimd -lower-esimd -S < %s -o %t.table
11
11
; RUN: FileCheck %s -input-file=%t.table
12
- ; RUN: FileCheck %s -input-file=%t_esimd_large_grf_0.ll --check-prefixes CHECK-ESIMD-LargeGRF-IR
12
+ ; RUN: FileCheck %s -input-file=%t_esimd_large_grf_0.ll --check-prefixes CHECK-ESIMD-LargeGRF-IR --implicit-check-not='RegisterAllocMode'
13
13
; RUN: FileCheck %s -input-file=%t_esimd_large_grf_0.prop --check-prefixes CHECK-ESIMD-LargeGRF-PROP
14
14
; RUN: FileCheck %s -input-file=%t_1.sym --check-prefixes CHECK-SYCL-SYM
15
15
; RUN: FileCheck %s -input-file=%t_esimd_1.sym --check-prefixes CHECK-ESIMD-SYM
58
58
declare dso_local spir_func void @_Z28__sycl_set_kernel_propertiesi (i32 noundef)
59
59
60
60
define weak_odr dso_local spir_kernel void @__ESIMD_large_grf_kernel () #0 !sycl_explicit_simd !0 !intel_reqd_sub_group_size !1 {
61
- ; CHECK-ESIMD-LargeGRF-IR: @__ESIMD_large_grf_kernel() {{.*}} !RegisterAllocMode ![[MetadataArg:[0-9]+]]
62
- ; CHECK-ESIMD-LargeGRF-IR: ![[MetadataArg]] = !{i32 2}
61
+ ; CHECK-ESIMD-LargeGRF-IR: @__ESIMD_large_grf_kernel() {{.*}}
63
62
entry:
64
63
call spir_func void @_Z17large_grf_markerv ()
65
64
ret void
You can’t perform that action at this time.
0 commit comments