Skip to content

Commit 7a2702f

Browse files
committed
Add another test with ranges
1 parent 916880d commit 7a2702f

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

llvm/test/Transforms/SimplifyCFG/hoist-with-metadata.ll

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -381,6 +381,28 @@ out:
381381
ret void
382382
}
383383

384+
define void @hoist_noalias_addrspace_switch_multiple(i64 %i, ptr %p, i64 %val) {
385+
; CHECK-LABEL: @hoist_noalias_addrspace_switch_multiple(
386+
; CHECK-NEXT: out:
387+
; CHECK-NEXT: [[T:%.*]] = atomicrmw add ptr [[P:%.*]], i64 [[VAL:%.*]] seq_cst, align 8, !noalias.addrspace [[META9:![0-9]+]]
388+
; CHECK-NEXT: ret void
389+
;
390+
switch i64 %i, label %bb0 [
391+
i64 1, label %bb1
392+
i64 2, label %bb2
393+
]
394+
bb0:
395+
%t = atomicrmw add ptr %p, i64 %val seq_cst, !noalias.addrspace !7
396+
br label %out
397+
bb1:
398+
%e = atomicrmw add ptr %p, i64 %val seq_cst, !noalias.addrspace !8
399+
br label %out
400+
bb2:
401+
%f = atomicrmw add ptr %p, i64 %val seq_cst, !noalias.addrspace !9
402+
br label %out
403+
out:
404+
ret void
405+
}
384406

385407
!0 = !{ i8 0, i8 1 }
386408
!1 = !{ i8 3, i8 5 }
@@ -389,6 +411,9 @@ out:
389411
!4 = !{i32 5, i32 6}
390412
!5 = !{i32 5, i32 7}
391413
!6 = !{i32 4, i32 8}
414+
!7 = !{i32 4, i32 8, i32 20, i32 31}
415+
!8 = !{i32 2, i32 5}
416+
!9 = !{i32 2, i32 5, i32 22, i32 42, i32 45, i32 50}
392417

393418
;.
394419
; CHECK: [[RNG0]] = !{i8 0, i8 1, i8 3, i8 5}
@@ -400,4 +425,5 @@ out:
400425
; CHECK: [[META6]] = !{float 2.500000e+00}
401426
; CHECK: [[META7]] = !{i32 5, i32 6}
402427
; CHECK: [[META8]] = !{i32 4, i32 8}
428+
; CHECK: [[META9]] = !{i32 2, i32 8, i32 20, i32 42, i32 45, i32 50}
403429
;.

0 commit comments

Comments
 (0)