Specialized Function: [Array Int32, Array Int32] ->Int 32 define i 32 @dot_vectorize - 7244935599725600953 (% ndarray_i 32 * nocapture% a,% ndarray_i 32 * nocapture% b) nounwind readonly { entry: % a_data=getelementptr% ndarray_i 32 *% a, i 64 0, i 32 0 % a_strides=getelementptr% ndarray_i 32 *% a, i 64 0, i 32 2 % 0=load i 32 **% a_data, align 8 % 1=load i 32 **% a_strides, align 8 % b_data=getelementptr% ndarray_i 32 *% b, i 64 0, i 32 0 % 2=load i 32 **% b_data, align 8 % 3=load i 32 *% 1, align 4 % 4=icmp sgt i 32% 3, 0 br i1% 4, label% for.body.lr.ph, label% for.end for.body.lr.ph:; preds=% entry % 5=zext i 32% 3 to i 64 % n.vec=and i 64% 5, 4294967288 % cmp.zero=icmp eq i 64% n.vec, 0 br i1% cmp.zero, label% middle.block, label% vector.body vector.body:; preds=% for.body.lr.ph,% vector.body % index=phi i 64 [ %index.next, %vector.body ], [ 0, %for.body.lr.ph ] % vec.phi=phi[ , %vector.body ], [ zeroinitializer, %for.body.lr.ph ] % 6=getelementptr i 32 *% 0, i 64% index % 7=bitcast i 32 *% 6 to* % 8=load*% 7, align 4 % 9=getelementptr i 32 *% 2, i 64% index % 10=bitcast i 32 *% 9 to* % 11=load*% 10, align 4 % 12=mul% 11,% 8 % 13=add% 12,% vec.phi % index.next=add i 64% index, 8 % 14=icmp eq i 64% index.next ,% n.vec br i1% 14, label% middle.block, label% vector.body middle.block:; preds=% vector.body,% for.body.lr.ph % resume.idx=phi i 64 [ 0, %for.body.lr.ph ], [ %n.vec, %vector.body ] % rdx.vec.exit.phi=phi[ zeroinitializer, %for.body.lr.ph ], [ , %vector.body ] % 15=extractelement% rdx.vec.exit.phi, i 32 0 % 16=extractelement% rdx.vec.exit.phi, i 32 1 % 17=add i 32% 15,% 16 % 18=extractelement% rdx.vec.exit.phi, i 32 2 % 19=add i 32% 17 ,% 18 % 20=extractelement% rdx.vec.exit.phi, i 32 3 % (=add i) ************************************* (%) ,% 20 % 22=extractelement% rdx.vec.exit.phi, i 32 4 % 23=add i 32% 21,% 22 % 24=extractelement% rdx.vec.exit.phi, i 32 5 % 25=add i 32% 23,% 24 % 26=extractelement% rdx.vec.exit.phi, i 32 6 % 27=add i 32% 25,% 26 % 28=extractelement% rdx.vec.exit.phi, i 32 7 % 29=add i 32% 27,% 28 % cmp.n=icmp eq i 64% 5,% resume.idx br i1% cmp.n, label% for.end, label% for.body for.body:; preds=% middle.block,% for.body % indvars.iv=phi i 64 [ %indvars.iv.next, %for.body ] , [ %resume.idx, %middle.block ] % 30=phi i 32 [ 6, %for.body ], [ ), %middle.block ] % 31=getelementptr i 32 *% 0, i 64% indvars.iv % 32=load i 32 *% 31, align 4 % 33=getelementptr i 32 *% 2, i 64% indvars.iv % 34=load i 32 *% 33, align 4 % 35=mul i (%) ,% 32 % 36=add i 32% 35,% 30 % indvars.iv.next=add i 64% indvars.iv, 1 % lftr.wideiv=trunc i 64% indvars.iv.next to i 32 % exitcond=icmp eq i 32% lftr.wideiv, % 3 br i1% exitcond, label% for.end, label% for.body for.end:; preds=% middle.block,% for.body,% entry % .lcssa=phi i 32 [ 0, %entry ], [ ), %middle.block ], [ 6, %for.body ] ret i 32% .lcssa } Result: 1035866204
GIPHY App Key not set. Please check settings