Skip to content

Commit 4847d6a

Browse files
committed
Auto merge of rust-lang#134047 - saethlin:inline-fmt-rt, r=m-ou-se
Switch inline(always) in core/src/fmt/rt.rs to plain inline I have a vague memory of these being instantiated a lot. Let's ask perf. Looks like this is an improvement!
2 parents dd436ae + 5f68526 commit 4847d6a

File tree

1 file changed

+17
-17
lines changed
  • library/core/src/fmt

1 file changed

+17
-17
lines changed

library/core/src/fmt/rt.rs

+17-17
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ pub struct Placeholder {
1919
}
2020

2121
impl Placeholder {
22-
#[inline(always)]
22+
#[inline]
2323
pub const fn new(
2424
position: usize,
2525
fill: char,
@@ -95,7 +95,7 @@ pub struct Argument<'a> {
9595

9696
#[rustc_diagnostic_item = "ArgumentMethods"]
9797
impl Argument<'_> {
98-
#[inline(always)]
98+
#[inline]
9999
fn new<'a, T>(x: &'a T, f: fn(&T, &mut Formatter<'_>) -> Result) -> Argument<'a> {
100100
Argument {
101101
// INVARIANT: this creates an `ArgumentType<'a>` from a `&'a T` and
@@ -109,47 +109,47 @@ impl Argument<'_> {
109109
}
110110
}
111111

112-
#[inline(always)]
112+
#[inline]
113113
pub fn new_display<T: Display>(x: &T) -> Argument<'_> {
114114
Self::new(x, Display::fmt)
115115
}
116-
#[inline(always)]
116+
#[inline]
117117
pub fn new_debug<T: Debug>(x: &T) -> Argument<'_> {
118118
Self::new(x, Debug::fmt)
119119
}
120-
#[inline(always)]
120+
#[inline]
121121
pub fn new_debug_noop<T: Debug>(x: &T) -> Argument<'_> {
122122
Self::new(x, |_, _| Ok(()))
123123
}
124-
#[inline(always)]
124+
#[inline]
125125
pub fn new_octal<T: Octal>(x: &T) -> Argument<'_> {
126126
Self::new(x, Octal::fmt)
127127
}
128-
#[inline(always)]
128+
#[inline]
129129
pub fn new_lower_hex<T: LowerHex>(x: &T) -> Argument<'_> {
130130
Self::new(x, LowerHex::fmt)
131131
}
132-
#[inline(always)]
132+
#[inline]
133133
pub fn new_upper_hex<T: UpperHex>(x: &T) -> Argument<'_> {
134134
Self::new(x, UpperHex::fmt)
135135
}
136-
#[inline(always)]
136+
#[inline]
137137
pub fn new_pointer<T: Pointer>(x: &T) -> Argument<'_> {
138138
Self::new(x, Pointer::fmt)
139139
}
140-
#[inline(always)]
140+
#[inline]
141141
pub fn new_binary<T: Binary>(x: &T) -> Argument<'_> {
142142
Self::new(x, Binary::fmt)
143143
}
144-
#[inline(always)]
144+
#[inline]
145145
pub fn new_lower_exp<T: LowerExp>(x: &T) -> Argument<'_> {
146146
Self::new(x, LowerExp::fmt)
147147
}
148-
#[inline(always)]
148+
#[inline]
149149
pub fn new_upper_exp<T: UpperExp>(x: &T) -> Argument<'_> {
150150
Self::new(x, UpperExp::fmt)
151151
}
152-
#[inline(always)]
152+
#[inline]
153153
pub fn from_usize(x: &usize) -> Argument<'_> {
154154
Argument { ty: ArgumentType::Count(*x) }
155155
}
@@ -164,7 +164,7 @@ impl Argument<'_> {
164164
// it here is an explicit CFI violation.
165165
#[allow(inline_no_sanitize)]
166166
#[no_sanitize(cfi, kcfi)]
167-
#[inline(always)]
167+
#[inline]
168168
pub(super) unsafe fn fmt(&self, f: &mut Formatter<'_>) -> Result {
169169
match self.ty {
170170
// SAFETY:
@@ -180,7 +180,7 @@ impl Argument<'_> {
180180
}
181181
}
182182

183-
#[inline(always)]
183+
#[inline]
184184
pub(super) fn as_usize(&self) -> Option<usize> {
185185
match self.ty {
186186
ArgumentType::Count(count) => Some(count),
@@ -198,7 +198,7 @@ impl Argument<'_> {
198198
/// let f = format_args!("{}", "a");
199199
/// println!("{f}");
200200
/// ```
201-
#[inline(always)]
201+
#[inline]
202202
pub fn none() -> [Self; 0] {
203203
[]
204204
}
@@ -215,7 +215,7 @@ pub struct UnsafeArg {
215215
impl UnsafeArg {
216216
/// See documentation where `UnsafeArg` is required to know when it is safe to
217217
/// create and use `UnsafeArg`.
218-
#[inline(always)]
218+
#[inline]
219219
pub unsafe fn new() -> Self {
220220
Self { _private: () }
221221
}

0 commit comments

Comments
 (0)