diff options
| author | bors <bors@rust-lang.org> | 2023-07-01 04:24:26 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2023-07-01 04:24:26 +0000 |
| commit | 6b06fdfcd4f06ba95123624f8e21de6bdeea3616 (patch) | |
| tree | 5fe15ccfae13cec0af954bc3b0326e7196ecbe80 | |
| parent | 7383ab7378b17605c197d320c087c6d91f856e60 (diff) | |
| parent | 528f11c24b2027f33ac9af63695dddfb7bd2b514 (diff) | |
| download | rust-6b06fdfcd4f06ba95123624f8e21de6bdeea3616.tar.gz rust-6b06fdfcd4f06ba95123624f8e21de6bdeea3616.zip | |
Auto merge of #113194 - lu-zero:intrinsics-inline, r=thomcc
Mark wrapped intrinsics as inline(always) This should mitigate having the inliner decide not to inline when the architecture is lacking an implementation of TargetTransformInfo::areInlineCompatible aware of the target features (e.g. PowerPC as today). See https://github.com/rust-lang/stdarch/pull/1443#issuecomment-1613788080
| -rw-r--r-- | library/core/src/intrinsics.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/library/core/src/intrinsics.rs b/library/core/src/intrinsics.rs index 9b8612485ac..5a9a7013a19 100644 --- a/library/core/src/intrinsics.rs +++ b/library/core/src/intrinsics.rs @@ -2657,7 +2657,7 @@ pub(crate) fn is_nonoverlapping<T>(src: *const T, dst: *const T, count: usize) - #[stable(feature = "rust1", since = "1.0.0")] #[rustc_allowed_through_unstable_modules] #[rustc_const_stable(feature = "const_intrinsic_copy", since = "1.63.0")] -#[inline] +#[inline(always)] #[cfg_attr(miri, track_caller)] // even without panics, this helps for Miri backtraces pub const unsafe fn copy_nonoverlapping<T>(src: *const T, dst: *mut T, count: usize) { extern "rust-intrinsic" { @@ -2748,7 +2748,7 @@ pub const unsafe fn copy_nonoverlapping<T>(src: *const T, dst: *mut T, count: us #[stable(feature = "rust1", since = "1.0.0")] #[rustc_allowed_through_unstable_modules] #[rustc_const_stable(feature = "const_intrinsic_copy", since = "1.63.0")] -#[inline] +#[inline(always)] #[cfg_attr(miri, track_caller)] // even without panics, this helps for Miri backtraces pub const unsafe fn copy<T>(src: *const T, dst: *mut T, count: usize) { extern "rust-intrinsic" { @@ -2821,7 +2821,7 @@ pub const unsafe fn copy<T>(src: *const T, dst: *mut T, count: usize) { #[stable(feature = "rust1", since = "1.0.0")] #[rustc_allowed_through_unstable_modules] #[rustc_const_unstable(feature = "const_ptr_write", issue = "86302")] -#[inline] +#[inline(always)] #[cfg_attr(miri, track_caller)] // even without panics, this helps for Miri backtraces pub const unsafe fn write_bytes<T>(dst: *mut T, val: u8, count: usize) { extern "rust-intrinsic" { |
