@@ -10,7 +10,7 @@ target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32"
1010target triple = "aarch64"
1111
1212; Function Attrs: nounwind uwtable
13- define i32 @slpordering (ptr noundef %p1 , i32 noundef %ip1 , ptr noundef %p2 , i32 noundef %ip2 ) # 0 {
13+ define i32 @slpordering (ptr noundef %p1 , i32 noundef %ip1 , ptr noundef %p2 , i32 noundef %ip2 ) {
1414; CHECK-LABEL: define range(i32 0, 65536) i32 @slpordering(
1515; CHECK-SAME: ptr noundef readonly captures(none) [[P1:%.*]], i32 noundef [[IP1:%.*]], ptr noundef readonly captures(none) [[P2:%.*]], i32 noundef [[IP2:%.*]]) local_unnamed_addr #[[ATTR0:[0-9]+]] {
1616; CHECK-NEXT: [[ENTRY:.*:]]
@@ -136,14 +136,14 @@ entry:
136136 store i32 %ip1 , ptr %ip1.addr , align 4 , !tbaa !8
137137 store ptr %p2 , ptr %p2.addr , align 8 , !tbaa !4
138138 store i32 %ip2 , ptr %ip2.addr , align 4 , !tbaa !8
139- call void @llvm.lifetime.start.p0 (ptr %emp ) # 2
140- call void @llvm.lifetime.start.p0 (ptr %r0 ) # 2
141- call void @llvm.lifetime.start.p0 (ptr %r1 ) # 2
142- call void @llvm.lifetime.start.p0 (ptr %r2 ) # 2
143- call void @llvm.lifetime.start.p0 (ptr %r3 ) # 2
144- call void @llvm.lifetime.start.p0 (ptr %sum ) # 2
139+ call void @llvm.lifetime.start.p0 (ptr %emp )
140+ call void @llvm.lifetime.start.p0 (ptr %r0 )
141+ call void @llvm.lifetime.start.p0 (ptr %r1 )
142+ call void @llvm.lifetime.start.p0 (ptr %r2 )
143+ call void @llvm.lifetime.start.p0 (ptr %r3 )
144+ call void @llvm.lifetime.start.p0 (ptr %sum )
145145 store i32 0 , ptr %sum , align 4 , !tbaa !8
146- call void @llvm.lifetime.start.p0 (ptr %i ) # 2
146+ call void @llvm.lifetime.start.p0 (ptr %i )
147147 store i32 0 , ptr %i , align 4 , !tbaa !8
148148 br label %for.cond
149149
@@ -153,7 +153,7 @@ for.cond: ; preds = %for.inc, %entry
153153 br i1 %cmp , label %for.body , label %for.cond.cleanup
154154
155155for.cond.cleanup: ; preds = %for.cond
156- call void @llvm.lifetime.end.p0 (ptr %i ) # 2
156+ call void @llvm.lifetime.end.p0 (ptr %i )
157157 br label %for.end
158158
159159for.body: ; preds = %for.cond
@@ -241,22 +241,22 @@ for.body: ; preds = %for.cond
241241 %shl42 = shl i32 %sub41 , 16
242242 %rdd43 = add nsw i32 %sub36 , %shl42
243243 store i32 %rdd43 , ptr %r3 , align 4 , !tbaa !8
244- call void @llvm.lifetime.start.p0 (ptr %e0 ) # 2
244+ call void @llvm.lifetime.start.p0 (ptr %e0 )
245245 %33 = load i32 , ptr %r0 , align 4 , !tbaa !8
246246 %34 = load i32 , ptr %r1 , align 4 , !tbaa !8
247247 %rdd44 = add i32 %33 , %34
248248 store i32 %rdd44 , ptr %e0 , align 4 , !tbaa !8
249- call void @llvm.lifetime.start.p0 (ptr %e1 ) # 2
249+ call void @llvm.lifetime.start.p0 (ptr %e1 )
250250 %35 = load i32 , ptr %r0 , align 4 , !tbaa !8
251251 %36 = load i32 , ptr %r1 , align 4 , !tbaa !8
252252 %sub45 = sub i32 %35 , %36
253253 store i32 %sub45 , ptr %e1 , align 4 , !tbaa !8
254- call void @llvm.lifetime.start.p0 (ptr %e2 ) # 2
254+ call void @llvm.lifetime.start.p0 (ptr %e2 )
255255 %37 = load i32 , ptr %r2 , align 4 , !tbaa !8
256256 %38 = load i32 , ptr %r3 , align 4 , !tbaa !8
257257 %rdd46 = add i32 %37 , %38
258258 store i32 %rdd46 , ptr %e2 , align 4 , !tbaa !8
259- call void @llvm.lifetime.start.p0 (ptr %e3 ) # 2
259+ call void @llvm.lifetime.start.p0 (ptr %e3 )
260260 %39 = load i32 , ptr %r2 , align 4 , !tbaa !8
261261 %40 = load i32 , ptr %r3 , align 4 , !tbaa !8
262262 %sub47 = sub i32 %39 , %40
@@ -293,10 +293,10 @@ for.body: ; preds = %for.cond
293293 %rrrayidx61 = getelementptr inbounds [4 x [4 x i32 ]], ptr %emp , i64 0 , i64 %idxprom60
294294 %rrrayidx62 = getelementptr inbounds [4 x i32 ], ptr %rrrayidx61 , i64 0 , i64 3
295295 store i32 %sub59 , ptr %rrrayidx62 , align 4 , !tbaa !8
296- call void @llvm.lifetime.end.p0 (ptr %e3 ) # 2
297- call void @llvm.lifetime.end.p0 (ptr %e2 ) # 2
298- call void @llvm.lifetime.end.p0 (ptr %e1 ) # 2
299- call void @llvm.lifetime.end.p0 (ptr %e0 ) # 2
296+ call void @llvm.lifetime.end.p0 (ptr %e3 )
297+ call void @llvm.lifetime.end.p0 (ptr %e2 )
298+ call void @llvm.lifetime.end.p0 (ptr %e1 )
299+ call void @llvm.lifetime.end.p0 (ptr %e0 )
300300 br label %for.inc
301301
302302for.inc: ; preds = %for.body
@@ -316,7 +316,7 @@ for.inc: ; preds = %for.body
316316 br label %for.cond , !llvm.loop !11
317317
318318for.end: ; preds = %for.cond.cleanup
319- call void @llvm.lifetime.start.p0 (ptr %i65 ) # 2
319+ call void @llvm.lifetime.start.p0 (ptr %i65 )
320320 store i32 0 , ptr %i65 , align 4 , !tbaa !8
321321 br label %for.cond66
322322
@@ -326,11 +326,11 @@ for.cond66: ; preds = %for.inc114, %for.en
326326 br i1 %cmp67 , label %for.body70 , label %for.cond.cleanup69
327327
328328for.cond.cleanup69: ; preds = %for.cond66
329- call void @llvm.lifetime.end.p0 (ptr %i65 ) # 2
329+ call void @llvm.lifetime.end.p0 (ptr %i65 )
330330 br label %for.end116
331331
332332for.body70: ; preds = %for.cond66
333- call void @llvm.lifetime.start.p0 (ptr %e071 ) # 2
333+ call void @llvm.lifetime.start.p0 (ptr %e071 )
334334 %rrrayidx72 = getelementptr inbounds [4 x [4 x i32 ]], ptr %emp , i64 0 , i64 0
335335 %59 = load i32 , ptr %i65 , align 4 , !tbaa !8
336336 %idxprom73 = sext i32 %59 to i64
@@ -343,7 +343,7 @@ for.body70: ; preds = %for.cond66
343343 %62 = load i32 , ptr %rrrayidx77 , align 4 , !tbaa !8
344344 %rdd78 = add i32 %60 , %62
345345 store i32 %rdd78 , ptr %e071 , align 4 , !tbaa !8
346- call void @llvm.lifetime.start.p0 (ptr %e179 ) # 2
346+ call void @llvm.lifetime.start.p0 (ptr %e179 )
347347 %rrrayidx80 = getelementptr inbounds [4 x [4 x i32 ]], ptr %emp , i64 0 , i64 0
348348 %63 = load i32 , ptr %i65 , align 4 , !tbaa !8
349349 %idxprom81 = sext i32 %63 to i64
@@ -356,7 +356,7 @@ for.body70: ; preds = %for.cond66
356356 %66 = load i32 , ptr %rrrayidx85 , align 4 , !tbaa !8
357357 %sub86 = sub i32 %64 , %66
358358 store i32 %sub86 , ptr %e179 , align 4 , !tbaa !8
359- call void @llvm.lifetime.start.p0 (ptr %e287 ) # 2
359+ call void @llvm.lifetime.start.p0 (ptr %e287 )
360360 %rrrayidx88 = getelementptr inbounds [4 x [4 x i32 ]], ptr %emp , i64 0 , i64 2
361361 %67 = load i32 , ptr %i65 , align 4 , !tbaa !8
362362 %idxprom89 = sext i32 %67 to i64
@@ -369,7 +369,7 @@ for.body70: ; preds = %for.cond66
369369 %70 = load i32 , ptr %rrrayidx93 , align 4 , !tbaa !8
370370 %rdd94 = add i32 %68 , %70
371371 store i32 %rdd94 , ptr %e287 , align 4 , !tbaa !8
372- call void @llvm.lifetime.start.p0 (ptr %e395 ) # 2
372+ call void @llvm.lifetime.start.p0 (ptr %e395 )
373373 %rrrayidx96 = getelementptr inbounds [4 x [4 x i32 ]], ptr %emp , i64 0 , i64 2
374374 %71 = load i32 , ptr %i65 , align 4 , !tbaa !8
375375 %idxprom97 = sext i32 %71 to i64
@@ -398,10 +398,10 @@ for.body70: ; preds = %for.cond66
398398 %82 = load i32 , ptr %e395 , align 4 , !tbaa !8
399399 %sub106 = sub nsw i32 %81 , %82
400400 store i32 %sub106 , ptr %r3 , align 4 , !tbaa !8
401- call void @llvm.lifetime.end.p0 (ptr %e395 ) # 2
402- call void @llvm.lifetime.end.p0 (ptr %e287 ) # 2
403- call void @llvm.lifetime.end.p0 (ptr %e179 ) # 2
404- call void @llvm.lifetime.end.p0 (ptr %e071 ) # 2
401+ call void @llvm.lifetime.end.p0 (ptr %e395 )
402+ call void @llvm.lifetime.end.p0 (ptr %e287 )
403+ call void @llvm.lifetime.end.p0 (ptr %e179 )
404+ call void @llvm.lifetime.end.p0 (ptr %e071 )
405405 %83 = load i32 , ptr %r0 , align 4 , !tbaa !8
406406 %call = call i32 @twoabs (i32 noundef %83 )
407407 %84 = load i32 , ptr %r1 , align 4 , !tbaa !8
@@ -432,28 +432,28 @@ for.end116: ; preds = %for.cond.cleanup69
432432 %shr = lshr i32 %90 , 16
433433 %rdd119 = add i32 %conv118 , %shr
434434 %shr120 = lshr i32 %rdd119 , 1
435- call void @llvm.lifetime.end.p0 (ptr %sum ) # 2
436- call void @llvm.lifetime.end.p0 (ptr %r3 ) # 2
437- call void @llvm.lifetime.end.p0 (ptr %r2 ) # 2
438- call void @llvm.lifetime.end.p0 (ptr %r1 ) # 2
439- call void @llvm.lifetime.end.p0 (ptr %r0 ) # 2
440- call void @llvm.lifetime.end.p0 (ptr %emp ) # 2
435+ call void @llvm.lifetime.end.p0 (ptr %sum )
436+ call void @llvm.lifetime.end.p0 (ptr %r3 )
437+ call void @llvm.lifetime.end.p0 (ptr %r2 )
438+ call void @llvm.lifetime.end.p0 (ptr %r1 )
439+ call void @llvm.lifetime.end.p0 (ptr %r0 )
440+ call void @llvm.lifetime.end.p0 (ptr %emp )
441441 ret i32 %shr120
442442}
443443
444444; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
445- declare void @llvm.lifetime.start.p0 (ptr nocapture ) # 1
445+ declare void @llvm.lifetime.start.p0 (ptr nocapture )
446446
447447; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
448- declare void @llvm.lifetime.end.p0 (ptr nocapture ) # 1
448+ declare void @llvm.lifetime.end.p0 (ptr nocapture )
449449
450450; Function Attrs: nounwind uwtable
451- define internal i32 @twoabs (i32 noundef %r ) # 0 {
451+ define internal i32 @twoabs (i32 noundef %r ) {
452452entry:
453453 %r.addr = alloca i32 , align 4
454454 %s = alloca i32 , align 4
455455 store i32 %r , ptr %r.addr , align 4 , !tbaa !8
456- call void @llvm.lifetime.start.p0 (ptr %s ) # 2
456+ call void @llvm.lifetime.start.p0 (ptr %s )
457457 %0 = load i32 , ptr %r.addr , align 4 , !tbaa !8
458458 %shr = lshr i32 %0 , 15
459459 %rnd = and i32 %shr , 65537
@@ -464,14 +464,10 @@ entry:
464464 %rdd = add i32 %1 , %2
465465 %3 = load i32 , ptr %s , align 4 , !tbaa !8
466466 %xor = xor i32 %rdd , %3
467- call void @llvm.lifetime.end.p0 (ptr %s ) # 2
467+ call void @llvm.lifetime.end.p0 (ptr %s )
468468 ret i32 %xor
469469}
470470
471- attributes #0 = { nounwind uwtable "frame-pointer" ="non-leaf" "no-infs-fp-math" ="true" "no-nans-fp-math" ="true" "no-signed-zeros-fp-math" ="true" "no-trapping-math" ="true" "stack-protector-buffer-size" ="8" "target-cpu" ="generic" "target-features" ="+fp-armv8,+neon,+v8a,-fmv" "unsafe-fp-math" ="true" }
472- attributes #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
473- attributes #2 = { nounwind }
474-
475471!4 = !{!5 , !5 , i64 0 }
476472!5 = !{!"any pointer" , !6 , i64 0 }
477473!6 = !{!"omnipotent char" , !7 , i64 0 }
0 commit comments