diff options
| author | Markus Reiter <me@reitermark.us> | 2024-02-22 14:59:52 +0100 |
|---|---|---|
| committer | Markus Reiter <me@reitermark.us> | 2024-02-25 12:03:48 +0100 |
| commit | b2fbb8a05392be976c67e3b0063203d5b049da5c (patch) | |
| tree | 798ac97adb74714b49df51d997c177ab056f9e34 /tests/codegen/issues | |
| parent | 710048f790ebc9ebfac6039c6733570f8084c9de (diff) | |
| download | rust-b2fbb8a05392be976c67e3b0063203d5b049da5c.tar.gz rust-b2fbb8a05392be976c67e3b0063203d5b049da5c.zip | |
Use generic `NonZero` in tests.
Diffstat (limited to 'tests/codegen/issues')
| -rw-r--r-- | tests/codegen/issues/issue-119422.rs | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/tests/codegen/issues/issue-119422.rs b/tests/codegen/issues/issue-119422.rs index 937fdcf28f5..19480b4dc9e 100644 --- a/tests/codegen/issues/issue-119422.rs +++ b/tests/codegen/issues/issue-119422.rs @@ -1,13 +1,13 @@ //! This test checks that compiler don't generate useless compares to zeros -//! for NonZero integer types. - +//! for `NonZero` integer types. +//! //@ compile-flags: -O --edition=2021 -Zmerge-functions=disabled //@ only-64bit (because the LLVM type of i64 for usize shows up) - #![crate_type = "lib"] +#![feature(generic_nonzero)] -use core::num::*; use core::ptr::NonNull; +use core::num::NonZero; // CHECK-LABEL: @check_non_null #[no_mangle] @@ -18,7 +18,7 @@ pub fn check_non_null(x: NonNull<u8>) -> bool { // CHECK-LABEL: @equals_zero_is_false_u8 #[no_mangle] -pub fn equals_zero_is_false_u8(x: NonZeroU8) -> bool { +pub fn equals_zero_is_false_u8(x: NonZero<u8>) -> bool { // CHECK-NOT: br // CHECK: ret i1 false // CHECK-NOT: br @@ -27,7 +27,7 @@ pub fn equals_zero_is_false_u8(x: NonZeroU8) -> bool { // CHECK-LABEL: @not_equals_zero_is_true_u8 #[no_mangle] -pub fn not_equals_zero_is_true_u8(x: NonZeroU8) -> bool { +pub fn not_equals_zero_is_true_u8(x: NonZero<u8>) -> bool { // CHECK-NOT: br // CHECK: ret i1 true // CHECK-NOT: br @@ -36,7 +36,7 @@ pub fn not_equals_zero_is_true_u8(x: NonZeroU8) -> bool { // CHECK-LABEL: @equals_zero_is_false_i8 #[no_mangle] -pub fn equals_zero_is_false_i8(x: NonZeroI8) -> bool { +pub fn equals_zero_is_false_i8(x: NonZero<i8>) -> bool { // CHECK-NOT: br // CHECK: ret i1 false // CHECK-NOT: br @@ -45,7 +45,7 @@ pub fn equals_zero_is_false_i8(x: NonZeroI8) -> bool { // CHECK-LABEL: @not_equals_zero_is_true_i8 #[no_mangle] -pub fn not_equals_zero_is_true_i8(x: NonZeroI8) -> bool { +pub fn not_equals_zero_is_true_i8(x: NonZero<i8>) -> bool { // CHECK-NOT: br // CHECK: ret i1 true // CHECK-NOT: br @@ -54,7 +54,7 @@ pub fn not_equals_zero_is_true_i8(x: NonZeroI8) -> bool { // CHECK-LABEL: @usize_try_from_u32 #[no_mangle] -pub fn usize_try_from_u32(x: NonZeroU32) -> NonZeroUsize { +pub fn usize_try_from_u32(x: NonZero<u32>) -> NonZero<usize> { // CHECK-NOT: br // CHECK: zext i32 %{{.*}} to i64 // CHECK-NOT: br @@ -64,7 +64,7 @@ pub fn usize_try_from_u32(x: NonZeroU32) -> NonZeroUsize { // CHECK-LABEL: @isize_try_from_i32 #[no_mangle] -pub fn isize_try_from_i32(x: NonZeroI32) -> NonZeroIsize { +pub fn isize_try_from_i32(x: NonZero<i32>) -> NonZero<isize> { // CHECK-NOT: br // CHECK: sext i32 %{{.*}} to i64 // CHECK-NOT: br @@ -74,7 +74,7 @@ pub fn isize_try_from_i32(x: NonZeroI32) -> NonZeroIsize { // CHECK-LABEL: @u64_from_nonzero_is_not_zero #[no_mangle] -pub fn u64_from_nonzero_is_not_zero(x: NonZeroU64)->bool { +pub fn u64_from_nonzero_is_not_zero(x: NonZero<u64>)->bool { // CHECK-NOT: br // CHECK: ret i1 false // CHECK-NOT: br |
