Inline strlen_rt in CStr::from_ptr
This enables LLVM to optimize this function as if it was strlen without having to enable std-aware LTO.
This commit is contained in:
parent
0768872680
commit
e94ba4ae78
@ -253,7 +253,7 @@ impl CStr {
|
||||
/// ```
|
||||
///
|
||||
/// [valid]: core::ptr#safety
|
||||
#[inline]
|
||||
#[inline] // inline is necessary for codegen to see strlen.
|
||||
#[must_use]
|
||||
#[stable(feature = "rust1", since = "1.0.0")]
|
||||
#[rustc_const_unstable(feature = "const_cstr_from_ptr", issue = "113219")]
|
||||
@ -280,6 +280,8 @@ const fn strlen_ct(s: *const c_char) -> usize {
|
||||
len
|
||||
}
|
||||
|
||||
// `inline` is necessary for codegen to see strlen.
|
||||
#[inline]
|
||||
fn strlen_rt(s: *const c_char) -> usize {
|
||||
extern "C" {
|
||||
/// Provided by libc or compiler_builtins.
|
||||
|
Loading…
Reference in New Issue
Block a user