14
14
// CHECK-LABEL: @slice_iter_next(
15
15
#[ no_mangle]
16
16
pub fn slice_iter_next < ' a > ( it : & mut std:: slice:: Iter < ' a , u32 > ) -> Option < & ' a u32 > {
17
- // CHECK: %[[ENDP:.+]] = getelementptr inbounds i8, ptr %it, {{i32 4|i64 8}}
17
+ // CHECK: %[[ENDP:.+]] = getelementptr inbounds{{( nuw)?}} i8, ptr %it, {{i32 4|i64 8}}
18
18
// CHECK: %[[END:.+]] = load ptr, ptr %[[ENDP]]
19
19
// CHECK-SAME: !nonnull
20
20
// CHECK-SAME: !noundef
@@ -31,7 +31,7 @@ pub fn slice_iter_next<'a>(it: &mut std::slice::Iter<'a, u32>) -> Option<&'a u32
31
31
// CHECK-LABEL: @slice_iter_next_back(
32
32
#[ no_mangle]
33
33
pub fn slice_iter_next_back < ' a > ( it : & mut std:: slice:: Iter < ' a , u32 > ) -> Option < & ' a u32 > {
34
- // CHECK: %[[ENDP:.+]] = getelementptr inbounds i8, ptr %it, {{i32 4|i64 8}}
34
+ // CHECK: %[[ENDP:.+]] = getelementptr inbounds{{( nuw)?}} i8, ptr %it, {{i32 4|i64 8}}
35
35
// CHECK: %[[END:.+]] = load ptr, ptr %[[ENDP]]
36
36
// CHECK-SAME: !nonnull
37
37
// CHECK-SAME: !noundef
@@ -55,7 +55,7 @@ pub fn slice_iter_next_back<'a>(it: &mut std::slice::Iter<'a, u32>) -> Option<&'
55
55
#[ no_mangle]
56
56
pub fn slice_iter_new ( slice : & [ u32 ] ) -> std:: slice:: Iter < ' _ , u32 > {
57
57
// CHECK-NOT: slice
58
- // CHECK: %[[END:.+]] = getelementptr inbounds i32{{.+}} %slice.0{{.+}} %slice.1
58
+ // CHECK: %[[END:.+]] = getelementptr inbounds{{( nuw)?}} i32{{.+}} %slice.0{{.+}} %slice.1
59
59
// CHECK-NOT: slice
60
60
// CHECK: insertvalue {{.+}} ptr %slice.0, 0
61
61
// CHECK-NOT: slice
@@ -70,7 +70,7 @@ pub fn slice_iter_new(slice: &[u32]) -> std::slice::Iter<'_, u32> {
70
70
#[ no_mangle]
71
71
pub fn slice_iter_mut_new ( slice : & mut [ u32 ] ) -> std:: slice:: IterMut < ' _ , u32 > {
72
72
// CHECK-NOT: slice
73
- // CHECK: %[[END:.+]] = getelementptr inbounds i32{{.+}} %slice.0{{.+}} %slice.1
73
+ // CHECK: %[[END:.+]] = getelementptr inbounds{{( nuw)?}} i32{{.+}} %slice.0{{.+}} %slice.1
74
74
// CHECK-NOT: slice
75
75
// CHECK: insertvalue {{.+}} ptr %slice.0, 0
76
76
// CHECK-NOT: slice
@@ -83,7 +83,7 @@ pub fn slice_iter_mut_new(slice: &mut [u32]) -> std::slice::IterMut<'_, u32> {
83
83
// CHECK-LABEL: @slice_iter_is_empty
84
84
#[ no_mangle]
85
85
pub fn slice_iter_is_empty ( it : & std:: slice:: Iter < ' _ , u32 > ) -> bool {
86
- // CHECK: %[[ENDP:.+]] = getelementptr inbounds i8, ptr %it, {{i32 4|i64 8}}
86
+ // CHECK: %[[ENDP:.+]] = getelementptr inbounds{{( nuw)?}} i8, ptr %it, {{i32 4|i64 8}}
87
87
// CHECK: %[[END:.+]] = load ptr, ptr %[[ENDP]]
88
88
// CHECK-SAME: !nonnull
89
89
// CHECK-SAME: !noundef
@@ -99,7 +99,7 @@ pub fn slice_iter_is_empty(it: &std::slice::Iter<'_, u32>) -> bool {
99
99
// CHECK-LABEL: @slice_iter_len
100
100
#[ no_mangle]
101
101
pub fn slice_iter_len ( it : & std:: slice:: Iter < ' _ , u32 > ) -> usize {
102
- // CHECK: %[[ENDP:.+]] = getelementptr inbounds i8, ptr %it, {{i32 4|i64 8}}
102
+ // CHECK: %[[ENDP:.+]] = getelementptr inbounds{{( nuw)?}} i8, ptr %it, {{i32 4|i64 8}}
103
103
// CHECK: %[[END:.+]] = load ptr, ptr %[[ENDP]]
104
104
// CHECK-SAME: !nonnull
105
105
// CHECK-SAME: !noundef
0 commit comments