diff options
| author | Ben Kimock <kimockb@gmail.com> | 2023-07-14 08:02:23 -0400 |
|---|---|---|
| committer | Ben Kimock <kimockb@gmail.com> | 2023-07-22 12:07:06 -0400 |
| commit | 65e52bb26c0b1aff874ee5e9de22856a4d23a780 (patch) | |
| tree | b8d6922fa782904de72d9378b60b8bd4ac32a317 | |
| parent | 8164cdb9ee460eddcb8888b9b6f72836a956d110 (diff) | |
| download | rust-65e52bb26c0b1aff874ee5e9de22856a4d23a780.tar.gz rust-65e52bb26c0b1aff874ee5e9de22856a4d23a780.zip | |
Add #[inline] to core debug assertion helpers
| -rw-r--r-- | library/core/src/intrinsics.rs | 3 | ||||
| -rw-r--r-- | tests/mir-opt/pre-codegen/mem_replace.mem_replace.PreCodegen.after.mir | 10 |
2 files changed, 5 insertions, 8 deletions
diff --git a/library/core/src/intrinsics.rs b/library/core/src/intrinsics.rs index deef68e4699..d042aaf3084 100644 --- a/library/core/src/intrinsics.rs +++ b/library/core/src/intrinsics.rs @@ -2524,12 +2524,14 @@ pub(crate) use assert_unsafe_precondition; /// Checks whether `ptr` is properly aligned with respect to /// `align_of::<T>()`. +#[inline] pub(crate) fn is_aligned_and_not_null<T>(ptr: *const T) -> bool { !ptr.is_null() && ptr.is_aligned() } /// Checks whether an allocation of `len` instances of `T` exceeds /// the maximum allowed allocation size. +#[inline] pub(crate) fn is_valid_allocation_size<T>(len: usize) -> bool { let max_len = const { let size = crate::mem::size_of::<T>(); @@ -2540,6 +2542,7 @@ pub(crate) fn is_valid_allocation_size<T>(len: usize) -> bool { /// Checks whether the regions of memory starting at `src` and `dst` of size /// `count * size_of::<T>()` do *not* overlap. +#[inline] pub(crate) fn is_nonoverlapping<T>(src: *const T, dst: *const T, count: usize) -> bool { let src_usize = src.addr(); let dst_usize = dst.addr(); diff --git a/tests/mir-opt/pre-codegen/mem_replace.mem_replace.PreCodegen.after.mir b/tests/mir-opt/pre-codegen/mem_replace.mem_replace.PreCodegen.after.mir index eeb2e3a1b03..26919dd98dd 100644 --- a/tests/mir-opt/pre-codegen/mem_replace.mem_replace.PreCodegen.after.mir +++ b/tests/mir-opt/pre-codegen/mem_replace.mem_replace.PreCodegen.after.mir @@ -10,22 +10,16 @@ fn mem_replace(_1: &mut u32, _2: u32) -> u32 { scope 2 { scope 3 { debug result => _0; - scope 7 (inlined std::ptr::write::<u32>) { + scope 6 (inlined std::ptr::write::<u32>) { debug dst => _1; debug src => _2; - scope 8 { - scope 9 (inlined std::ptr::write::runtime::<u32>) { - debug dst => _1; - } + scope 7 { } } } scope 4 (inlined std::ptr::read::<u32>) { debug src => _1; scope 5 { - scope 6 (inlined std::ptr::read::runtime::<u32>) { - debug src => _1; - } } } } |
