@@ -50,7 +50,7 @@ $_ZTSZZ15matrix_multiply = comdat any
5050@__spirv_BuiltInLocalInvocationId = external dso_local local_unnamed_addr addrspace (1 ) constant <3 x i64 >, align 32
5151
5252; Function Attrs: convergent mustprogress norecurse nounwind
53- define weak_odr dso_local spir_kernel void @_ZTSZZ15matrix_multiply (ptr addrspace (1 ) noundef align 4 %_arg_accC , ptr noundef byval (%"class.sycl::_V1::range" ) align 8 %_arg_accC2 , ptr noundef byval (%"class.sycl::_V1::id" ) align 8 %_arg_accC3 , i64 noundef %_arg_sg_size , ptr addrspace (1 ) noundef readonly align 2 %_arg_accA , ptr noundef byval (%"class.sycl::_V1::range" ) align 8 %_arg_accA5 , ptr noundef byval (%"class.sycl::_V1::id" ) align 8 %_arg_accA6 , ptr addrspace (1 ) noundef readonly align 2 %_arg_accB , ptr noundef byval (%"class.sycl::_V1::range" ) align 8 %_arg_accB8 , ptr noundef byval (%"class.sycl::_V1::id" ) align 8 %_arg_accB9 ) local_unnamed_addr # 0 comdat {
53+ define weak_odr dso_local spir_kernel void @_ZTSZZ15matrix_multiply (ptr addrspace (1 ) noundef align 4 %_arg_accC , ptr noundef byval (%"class.sycl::_V1::range" ) align 8 %_arg_accC2 , ptr noundef byval (%"class.sycl::_V1::id" ) align 8 %_arg_accC3 , i64 noundef %_arg_sg_size , ptr addrspace (1 ) noundef readonly align 2 %_arg_accA , ptr noundef byval (%"class.sycl::_V1::range" ) align 8 %_arg_accA5 , ptr noundef byval (%"class.sycl::_V1::id" ) align 8 %_arg_accA6 , ptr addrspace (1 ) noundef readonly align 2 %_arg_accB , ptr noundef byval (%"class.sycl::_V1::range" ) align 8 %_arg_accB8 , ptr noundef byval (%"class.sycl::_V1::id" ) align 8 %_arg_accB9 ) comdat {
5454entry:
5555 %agg.tmp11.sroa.0.sroa.2.0._arg_accC2.ascast.sroa_idx = getelementptr inbounds i8 , ptr %_arg_accC2 , i64 8
5656 %agg.tmp11.sroa.0.sroa.2.0.copyload = load i64 , ptr %agg.tmp11.sroa.0.sroa.2.0._arg_accC2.ascast.sroa_idx , align 8
9797 %conv.i = trunc i64 %sub.i to i32
9898 %div.i.tr = trunc i64 %div.i to i32
9999 %conv2.i = shl i32 %div.i.tr , 4
100- %call4.i = tail call spir_func noundef target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1ffLm1ELm16ELN5__spv9MatrixUseE2ELNS1_12MatrixLayoutE3ELNS1_5Scope4FlagE3EEPNS1_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS3_mi (ptr addrspace (1 ) noundef %add.ptr.i.i , i32 noundef %conv.i , i32 noundef %conv2.i , i32 noundef 0 , i64 noundef 128 , i32 noundef 0 ) # 3
100+ %call4.i = tail call spir_func noundef target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1ffLm1ELm16ELN5__spv9MatrixUseE2ELNS1_12MatrixLayoutE3ELNS1_5Scope4FlagE3EEPNS1_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS3_mi (ptr addrspace (1 ) noundef %add.ptr.i.i , i32 noundef %conv.i , i32 noundef %conv2.i , i32 noundef 0 , i64 noundef 128 , i32 noundef 0 )
101101 %add.i7.i.i.i.i.i118 = add i64 %mul.i6.i.i.i.i91 , %agg.tmp16.sroa.0.sroa.2.0.copyload
102102 %idx.neg.i.i119 = sub i64 0 , %add.i7.i.i.i.i.i118
103103 %add.ptr.i.i120 = getelementptr inbounds %"class.sycl::_V1::ext::oneapi::bfloat16" , ptr addrspace (1 ) %add.ptr.i92 , i64 %idx.neg.i.i119
@@ -115,37 +115,32 @@ for.cond.i: ; preds = %for.body.i, %entry
115115
116116for.body.i: ; preds = %for.cond.i
117117 %7 = shl nuw nsw i32 %k.0.i , 4
118- %call3.i50 = tail call spir_func noundef target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 1 , 16 , 0 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1KN4sycl3_V13ext6oneapi8bfloat16ES4_Lm1ELm16ELN5__spv9MatrixUseE0ELNS6_12MatrixLayoutE0ELNS6_5Scope4FlagE3EEPNS6_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS8_mi (ptr addrspace (1 ) noundef %add.ptr.i.i120 , i32 noundef %conv.i , i32 noundef %7 , i32 noundef 0 , i64 noundef 128 , i32 noundef 0 ) # 3
118+ %call3.i50 = tail call spir_func noundef target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 1 , 16 , 0 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1KN4sycl3_V13ext6oneapi8bfloat16ES4_Lm1ELm16ELN5__spv9MatrixUseE0ELNS6_12MatrixLayoutE0ELNS6_5Scope4FlagE3EEPNS6_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS8_mi (ptr addrspace (1 ) noundef %add.ptr.i.i120 , i32 noundef %conv.i , i32 noundef %7 , i32 noundef 0 , i64 noundef 128 , i32 noundef 0 )
119119 %8 = shl nuw nsw i32 %k.0.i , 3
120- %call3.i61 = tail call spir_func noundef target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 16 , 16 , 1 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1KN4sycl3_V13ext6oneapi8bfloat16ES4_Lm16ELm16ELN5__spv9MatrixUseE1ELNS6_12MatrixLayoutE2ELNS6_5Scope4FlagE3EEPNS6_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS8_mi (ptr addrspace (1 ) noundef %add.ptr.i.i128 , i32 noundef %8 , i32 noundef %conv2.i60 , i32 noundef 2 , i64 noundef 256 , i32 noundef 0 ) # 3
121- %call.i63 = tail call spir_func noundef target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) @_Z34__spirv_CooperativeMatrixMulAddKHRIN4sycl3_V13ext6oneapi8bfloat16ES4_fLm1ELm16ELm16ELN5__spv9MatrixUseE0ELS6_1ELS6_2ELNS5_12MatrixLayoutE0ELS7_0ELS7_0ELNS5_5Scope4FlagE3EEPNS5_28__spirv_CooperativeMatrixKHRIT1_XT11_EXT2_EXT4_EXT7_EEEPNSA_IT_XT11_EXT2_EXT3_EXT5_EEEPNSA_IT0_XT11_EXT3_EXT4_EXT6_EEESD_m (target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 1 , 16 , 0 ) noundef %call3.i50 , target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 16 , 16 , 1 ) noundef %call3.i61 , target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) noundef %sub_c.i.sroa.0.0 , i64 noundef 64 ) # 3
120+ %call3.i61 = tail call spir_func noundef target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 16 , 16 , 1 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1KN4sycl3_V13ext6oneapi8bfloat16ES4_Lm16ELm16ELN5__spv9MatrixUseE1ELNS6_12MatrixLayoutE2ELNS6_5Scope4FlagE3EEPNS6_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS8_mi (ptr addrspace (1 ) noundef %add.ptr.i.i128 , i32 noundef %8 , i32 noundef %conv2.i60 , i32 noundef 2 , i64 noundef 256 , i32 noundef 0 )
121+ %call.i63 = tail call spir_func noundef target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) @_Z34__spirv_CooperativeMatrixMulAddKHRIN4sycl3_V13ext6oneapi8bfloat16ES4_fLm1ELm16ELm16ELN5__spv9MatrixUseE0ELS6_1ELS6_2ELNS5_12MatrixLayoutE0ELS7_0ELS7_0ELNS5_5Scope4FlagE3EEPNS5_28__spirv_CooperativeMatrixKHRIT1_XT11_EXT2_EXT4_EXT7_EEEPNSA_IT_XT11_EXT2_EXT3_EXT5_EEEPNSA_IT0_XT11_EXT3_EXT4_EXT6_EEESD_m (target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 1 , 16 , 0 ) noundef %call3.i50 , target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 16 , 16 , 1 ) noundef %call3.i61 , target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) noundef %sub_c.i.sroa.0.0 , i64 noundef 64 )
122122 %add.i = add nuw nsw i32 %k.0.i , 1
123123 br label %for.cond.i
124124
125125_ZZZ15matrix_multiplyIfN4sycl3_V13ext6oneapi8bfloat16ELm16ELm128ELm128ELi2ELm1ELm16ELm16E4multIS4_Lm1ELm16ELm16EEEvR10big_matrixIT_XT1_EXT2_EERS7_IT0_XT1_EXT3_EERS7_ISB_XdvT3_T4_EXmlT2_T4_EEENKUlRNS1_7handlerEE_clESH_ENKUlNS1_7nd_itemILi2EEEE_clESK_.exit: ; preds = %for.cond.i
126- tail call spir_func void @_Z41__spirv_CooperativeMatrixStoreOffsetINTELIU3AS1ffLm1ELm16ELN5__spv9MatrixUseE2ELNS1_12MatrixLayoutE3ELNS1_5Scope4FlagE3EEvPT_iiPNS1_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEES3_mi (ptr addrspace (1 ) noundef %add.ptr.i.i , i32 noundef %conv.i , i32 noundef %conv2.i , target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) noundef %sub_c.i.sroa.0.0 , i32 noundef 0 , i64 noundef 128 , i32 noundef 0 ) # 3
126+ tail call spir_func void @_Z41__spirv_CooperativeMatrixStoreOffsetINTELIU3AS1ffLm1ELm16ELN5__spv9MatrixUseE2ELNS1_12MatrixLayoutE3ELNS1_5Scope4FlagE3EEvPT_iiPNS1_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEES3_mi (ptr addrspace (1 ) noundef %add.ptr.i.i , i32 noundef %conv.i , i32 noundef %conv2.i , target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) noundef %sub_c.i.sroa.0.0 , i32 noundef 0 , i64 noundef 128 , i32 noundef 0 )
127127 ret void
128128}
129129
130130; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write)
131- declare void @llvm.assume (i1 noundef) # 1
131+ declare void @llvm.assume (i1 noundef)
132132
133133; Function Attrs: convergent nounwind
134- declare dso_local spir_func noundef target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1ffLm1ELm16ELN5__spv9MatrixUseE2ELNS1_12MatrixLayoutE3ELNS1_5Scope4FlagE3EEPNS1_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS3_mi (ptr addrspace (1 ) noundef, i32 noundef, i32 noundef, i32 noundef, i64 noundef, i32 noundef) local_unnamed_addr # 2
134+ declare dso_local spir_func noundef target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1ffLm1ELm16ELN5__spv9MatrixUseE2ELNS1_12MatrixLayoutE3ELNS1_5Scope4FlagE3EEPNS1_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS3_mi (ptr addrspace (1 ) noundef, i32 noundef, i32 noundef, i32 noundef, i64 noundef, i32 noundef)
135135
136136; Function Attrs: convergent nounwind
137- declare dso_local spir_func noundef target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 1 , 16 , 0 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1KN4sycl3_V13ext6oneapi8bfloat16ES4_Lm1ELm16ELN5__spv9MatrixUseE0ELNS6_12MatrixLayoutE0ELNS6_5Scope4FlagE3EEPNS6_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS8_mi (ptr addrspace (1 ) noundef, i32 noundef, i32 noundef, i32 noundef, i64 noundef, i32 noundef) local_unnamed_addr # 2
137+ declare dso_local spir_func noundef target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 1 , 16 , 0 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1KN4sycl3_V13ext6oneapi8bfloat16ES4_Lm1ELm16ELN5__spv9MatrixUseE0ELNS6_12MatrixLayoutE0ELNS6_5Scope4FlagE3EEPNS6_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS8_mi (ptr addrspace (1 ) noundef, i32 noundef, i32 noundef, i32 noundef, i64 noundef, i32 noundef)
138138
139139; Function Attrs: convergent nounwind
140- declare dso_local spir_func noundef target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 16 , 16 , 1 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1KN4sycl3_V13ext6oneapi8bfloat16ES4_Lm16ELm16ELN5__spv9MatrixUseE1ELNS6_12MatrixLayoutE2ELNS6_5Scope4FlagE3EEPNS6_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS8_mi (ptr addrspace (1 ) noundef, i32 noundef, i32 noundef, i32 noundef, i64 noundef, i32 noundef) local_unnamed_addr # 2
140+ declare dso_local spir_func noundef target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 16 , 16 , 1 ) @_Z40__spirv_CooperativeMatrixLoadOffsetINTELIU3AS1KN4sycl3_V13ext6oneapi8bfloat16ES4_Lm16ELm16ELN5__spv9MatrixUseE1ELNS6_12MatrixLayoutE2ELNS6_5Scope4FlagE3EEPNS6_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEEPT_iiS8_mi (ptr addrspace (1 ) noundef, i32 noundef, i32 noundef, i32 noundef, i64 noundef, i32 noundef)
141141
142142; Function Attrs: convergent nounwind
143- declare dso_local spir_func noundef target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) @_Z34__spirv_CooperativeMatrixMulAddKHRIN4sycl3_V13ext6oneapi8bfloat16ES4_fLm1ELm16ELm16ELN5__spv9MatrixUseE0ELS6_1ELS6_2ELNS5_12MatrixLayoutE0ELS7_0ELS7_0ELNS5_5Scope4FlagE3EEPNS5_28__spirv_CooperativeMatrixKHRIT1_XT11_EXT2_EXT4_EXT7_EEEPNSA_IT_XT11_EXT2_EXT3_EXT5_EEEPNSA_IT0_XT11_EXT3_EXT4_EXT6_EEESD_m (target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 1 , 16 , 0 ) noundef, target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 16 , 16 , 1 ) noundef, target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) noundef, i64 noundef) local_unnamed_addr # 2
143+ declare dso_local spir_func noundef target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) @_Z34__spirv_CooperativeMatrixMulAddKHRIN4sycl3_V13ext6oneapi8bfloat16ES4_fLm1ELm16ELm16ELN5__spv9MatrixUseE0ELS6_1ELS6_2ELNS5_12MatrixLayoutE0ELS7_0ELS7_0ELNS5_5Scope4FlagE3EEPNS5_28__spirv_CooperativeMatrixKHRIT1_XT11_EXT2_EXT4_EXT7_EEEPNSA_IT_XT11_EXT2_EXT3_EXT5_EEEPNSA_IT0_XT11_EXT3_EXT4_EXT6_EEESD_m (target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 1 , 16 , 0 ) noundef, target ("spirv.CooperativeMatrixKHR" , i16 , 3 , 16 , 16 , 1 ) noundef, target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) noundef, i64 noundef)
144144
145145; Function Attrs: convergent nounwind
146- declare dso_local spir_func void @_Z41__spirv_CooperativeMatrixStoreOffsetINTELIU3AS1ffLm1ELm16ELN5__spv9MatrixUseE2ELNS1_12MatrixLayoutE3ELNS1_5Scope4FlagE3EEvPT_iiPNS1_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEES3_mi (ptr addrspace (1 ) noundef, i32 noundef, i32 noundef, target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) noundef, i32 noundef, i64 noundef, i32 noundef) local_unnamed_addr #2
147-
148- attributes #0 = { convergent mustprogress norecurse nounwind "frame-pointer" ="all" "no-trapping-math" ="true" "stack-protector-buffer-size" ="8" "sycl-module-id" ="../joint_matrix_all_sizes.cpp" "sycl-optlevel" ="2" "uniform-work-group-size" ="true" }
149- attributes #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) }
150- attributes #2 = { convergent nounwind "frame-pointer" ="all" "no-trapping-math" ="true" "stack-protector-buffer-size" ="8" }
151- attributes #3 = { convergent nounwind }
146+ declare dso_local spir_func void @_Z41__spirv_CooperativeMatrixStoreOffsetINTELIU3AS1ffLm1ELm16ELN5__spv9MatrixUseE2ELNS1_12MatrixLayoutE3ELNS1_5Scope4FlagE3EEvPT_iiPNS1_28__spirv_CooperativeMatrixKHRIT0_XT5_EXT1_EXT2_EXT3_EEES3_mi (ptr addrspace (1 ) noundef, i32 noundef, i32 noundef, target ("spirv.CooperativeMatrixKHR" , float , 3 , 1 , 16 , 2 ) noundef, i32 noundef, i64 noundef, i32 noundef)
0 commit comments