-
-
Save mohamedadaly/57d62a71f6acee21be0883b487cf2e7d to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
"for conv.s1.r$x.r$x": ; preds = %"for conv.s1.r$x.r$x", %"for conv.s1.r$x.r$x.preheader" | |
%conv20.sroa.0.0 = phi <4 x i32> [ %303, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.4.0 = phi <4 x i32> [ %304, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.8.0 = phi <4 x i32> [ %305, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.12.0 = phi <4 x i32> [ %311, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.16.0 = phi <4 x i32> [ %312, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.20.0 = phi <4 x i32> [ %313, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.24.0 = phi <4 x i32> [ %319, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.28.0 = phi <4 x i32> [ %320, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.32.0 = phi <4 x i32> [ %321, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.36.0 = phi <4 x i32> [ %327, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.40.0 = phi <4 x i32> [ %328, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%conv20.sroa.44.0 = phi <4 x i32> [ %329, %"for conv.s1.r$x.r$x" ], [ zeroinitializer, %"for conv.s1.r$x.r$x.preheader" ] | |
%"conv.s1.r$x.r$x" = phi i32 [ %330, %"for conv.s1.r$x.r$x" ], [ 0, %"for conv.s1.r$x.r$x.preheader" ] | |
%264 = add nsw i32 %"conv.s1.r$x.r$x", %t398 | |
%265 = getelementptr inbounds i8, i8* %right_in_elwise, i32 %264 | |
%266 = load i8, i8* %265, align 1, !tbaa !42 | |
%267 = insertelement <12 x i8> undef, i8 %266, i32 0 | |
%268 = shufflevector <12 x i8> %267, <12 x i8> undef, <12 x i32> zeroinitializer | |
%269 = zext <12 x i8> %268 to <12 x i16> | |
%270 = mul nsw i32 %"conv.s1.r$x.r$x", %t337 | |
%271 = add nsw i32 %t413, %270 | |
%272 = getelementptr inbounds i8, i8* %left_global_wrapper, i32 %271 | |
%273 = bitcast i8* %272 to <12 x i8>* | |
%274 = load <12 x i8>, <12 x i8>* %273, align 1, !tbaa !46 | |
%275 = zext <12 x i8> %274 to <12 x i16> | |
%276 = mul nuw <12 x i16> %269, %275 | |
%277 = add nsw i32 %"conv.s1.r$x.r$x", %t399 | |
%278 = getelementptr inbounds i8, i8* %right_in_elwise, i32 %277 | |
%279 = load i8, i8* %278, align 1, !tbaa !42 | |
%280 = insertelement <12 x i8> undef, i8 %279, i32 0 | |
%281 = shufflevector <12 x i8> %280, <12 x i8> undef, <12 x i32> zeroinitializer | |
%282 = zext <12 x i8> %281 to <12 x i16> | |
%283 = mul nuw <12 x i16> %282, %275 | |
%284 = add nsw i32 %"conv.s1.r$x.r$x", %t400 | |
%285 = getelementptr inbounds i8, i8* %right_in_elwise, i32 %284 | |
%286 = load i8, i8* %285, align 1, !tbaa !42 | |
%287 = insertelement <12 x i8> undef, i8 %286, i32 0 | |
%288 = shufflevector <12 x i8> %287, <12 x i8> undef, <12 x i32> zeroinitializer | |
%289 = zext <12 x i8> %288 to <12 x i16> | |
%290 = mul nuw <12 x i16> %289, %275 | |
%291 = add nsw i32 %"conv.s1.r$x.r$x", %t401 | |
%292 = getelementptr inbounds i8, i8* %right_in_elwise, i32 %291 | |
%293 = load i8, i8* %292, align 1, !tbaa !42 | |
%294 = insertelement <12 x i8> undef, i8 %293, i32 0 | |
%295 = shufflevector <12 x i8> %294, <12 x i8> undef, <12 x i32> zeroinitializer | |
%296 = zext <12 x i8> %295 to <12 x i16> | |
%297 = mul nuw <12 x i16> %296, %275 | |
%298 = zext <12 x i16> %276 to <12 x i32> | |
%299 = shufflevector <4 x i32> %conv20.sroa.0.0, <4 x i32> %conv20.sroa.4.0, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7> | |
%300 = shufflevector <4 x i32> %conv20.sroa.8.0, <4 x i32> undef, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 undef, i32 undef, i32 undef, i32 undef> | |
%301 = shufflevector <8 x i32> %299, <8 x i32> %300, <12 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11> | |
%302 = add <12 x i32> %301, %298 | |
%303 = shufflevector <12 x i32> %302, <12 x i32> undef, <4 x i32> <i32 0, i32 1, i32 2, i32 3> | |
%304 = shufflevector <12 x i32> %302, <12 x i32> undef, <4 x i32> <i32 4, i32 5, i32 6, i32 7> | |
%305 = shufflevector <12 x i32> %302, <12 x i32> undef, <4 x i32> <i32 8, i32 9, i32 10, i32 11> | |
%306 = zext <12 x i16> %283 to <12 x i32> | |
%307 = shufflevector <4 x i32> %conv20.sroa.12.0, <4 x i32> %conv20.sroa.16.0, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7> | |
%308 = shufflevector <4 x i32> %conv20.sroa.20.0, <4 x i32> undef, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 undef, i32 undef, i32 undef, i32 undef> | |
%309 = shufflevector <8 x i32> %307, <8 x i32> %308, <12 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11> | |
%310 = add <12 x i32> %309, %306 | |
%311 = shufflevector <12 x i32> %310, <12 x i32> undef, <4 x i32> <i32 0, i32 1, i32 2, i32 3> | |
%312 = shufflevector <12 x i32> %310, <12 x i32> undef, <4 x i32> <i32 4, i32 5, i32 6, i32 7> | |
%313 = shufflevector <12 x i32> %310, <12 x i32> undef, <4 x i32> <i32 8, i32 9, i32 10, i32 11> | |
%314 = zext <12 x i16> %290 to <12 x i32> | |
%315 = shufflevector <4 x i32> %conv20.sroa.24.0, <4 x i32> %conv20.sroa.28.0, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7> | |
%316 = shufflevector <4 x i32> %conv20.sroa.32.0, <4 x i32> undef, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 undef, i32 undef, i32 undef, i32 undef> | |
%317 = shufflevector <8 x i32> %315, <8 x i32> %316, <12 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11> | |
%318 = add <12 x i32> %317, %314 | |
%319 = shufflevector <12 x i32> %318, <12 x i32> undef, <4 x i32> <i32 0, i32 1, i32 2, i32 3> | |
%320 = shufflevector <12 x i32> %318, <12 x i32> undef, <4 x i32> <i32 4, i32 5, i32 6, i32 7> | |
%321 = shufflevector <12 x i32> %318, <12 x i32> undef, <4 x i32> <i32 8, i32 9, i32 10, i32 11> | |
%322 = zext <12 x i16> %297 to <12 x i32> | |
%323 = shufflevector <4 x i32> %conv20.sroa.36.0, <4 x i32> %conv20.sroa.40.0, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7> | |
%324 = shufflevector <4 x i32> %conv20.sroa.44.0, <4 x i32> undef, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 undef, i32 undef, i32 undef, i32 undef> | |
%325 = shufflevector <8 x i32> %323, <8 x i32> %324, <12 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11> | |
%326 = add <12 x i32> %325, %322 | |
%327 = shufflevector <12 x i32> %326, <12 x i32> undef, <4 x i32> <i32 0, i32 1, i32 2, i32 3> | |
%328 = shufflevector <12 x i32> %326, <12 x i32> undef, <4 x i32> <i32 4, i32 5, i32 6, i32 7> | |
%329 = shufflevector <12 x i32> %326, <12 x i32> undef, <4 x i32> <i32 8, i32 9, i32 10, i32 11> | |
%330 = add nuw nsw i32 %"conv.s1.r$x.r$x", 1 | |
%331 = icmp eq i32 %330, %lhs.extent.1 | |
br i1 %331, label %"consume conv", label %"for conv.s1.r$x.r$x" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment