@@ -15,7 +15,7 @@ use std::num::NonZero;
1515// CHECK-LABEL: @is_zero_slice_long
1616#[ no_mangle]
1717pub fn is_zero_slice_long ( data : & [ u8 ; 456 ] ) -> bool {
18- // CHECK: %[[BCMP:.+]] = tail call i32 @{{bcmp|memcmp}}({{.+}})
18+ // CHECK: %[[BCMP:.+]] = tail call i32 @{{bcmp|memcmp}}({{.+}} 456 )
1919 // CHECK-NEXT: %[[EQ:.+]] = icmp eq i32 %[[BCMP]], 0
2020 // CHECK-NEXT: ret i1 %[[EQ]]
2121 & data[ ..] == [ 0 ; 456 ]
@@ -48,7 +48,7 @@ pub fn is_zero_array(data: &[u8; 4]) -> bool {
4848#[ no_mangle]
4949fn eq_slice_of_nested_u8 ( x : & [ [ u8 ; 3 ] ] , y : & [ [ u8 ; 3 ] ] ) -> bool {
5050 // CHECK: icmp eq [[USIZE]] %1, %3
51- // CHECK: %[[BYTES:.+]] = mul nsw [[USIZE]] %1, 3
51+ // CHECK: %[[BYTES:.+]] = mul nuw nsw [[USIZE]] %1, 3
5252 // CHECK: tail call{{( noundef)?}} i32 @{{bcmp|memcmp}}(ptr
5353 // CHECK-SAME: , [[USIZE]]{{( noundef)?}} %[[BYTES]])
5454 x == y
@@ -60,7 +60,7 @@ fn eq_slice_of_nested_u8(x: &[[u8; 3]], y: &[[u8; 3]]) -> bool {
6060#[ no_mangle]
6161fn eq_slice_of_i32 ( x : & [ i32 ] , y : & [ i32 ] ) -> bool {
6262 // CHECK: icmp eq [[USIZE]] %1, %3
63- // CHECK: %[[BYTES:.+]] = shl nsw [[USIZE]] %1, 2
63+ // CHECK: %[[BYTES:.+]] = shl nuw nsw [[USIZE]] %1, 2
6464 // CHECK: tail call{{( noundef)?}} i32 @{{bcmp|memcmp}}(ptr
6565 // CHECK-SAME: , [[USIZE]]{{( noundef)?}} %[[BYTES]])
6666 x == y
@@ -72,7 +72,7 @@ fn eq_slice_of_i32(x: &[i32], y: &[i32]) -> bool {
7272#[ no_mangle]
7373fn eq_slice_of_nonzero ( x : & [ NonZero < i32 > ] , y : & [ NonZero < i32 > ] ) -> bool {
7474 // CHECK: icmp eq [[USIZE]] %1, %3
75- // CHECK: %[[BYTES:.+]] = shl nsw [[USIZE]] %1, 2
75+ // CHECK: %[[BYTES:.+]] = shl nuw nsw [[USIZE]] %1, 2
7676 // CHECK: tail call{{( noundef)?}} i32 @{{bcmp|memcmp}}(ptr
7777 // CHECK-SAME: , [[USIZE]]{{( noundef)?}} %[[BYTES]])
7878 x == y
@@ -84,7 +84,7 @@ fn eq_slice_of_nonzero(x: &[NonZero<i32>], y: &[NonZero<i32>]) -> bool {
8484#[ no_mangle]
8585fn eq_slice_of_option_of_nonzero ( x : & [ Option < NonZero < i16 > > ] , y : & [ Option < NonZero < i16 > > ] ) -> bool {
8686 // CHECK: icmp eq [[USIZE]] %1, %3
87- // CHECK: %[[BYTES:.+]] = shl nsw [[USIZE]] %1, 1
87+ // CHECK: %[[BYTES:.+]] = shl nuw nsw [[USIZE]] %1, 1
8888 // CHECK: tail call{{( noundef)?}} i32 @{{bcmp|memcmp}}(ptr
8989 // CHECK-SAME: , [[USIZE]]{{( noundef)?}} %[[BYTES]])
9090 x == y
0 commit comments