rust/src/libcore
bors a1f4973090 auto merge of #16662 : pczarn/rust/format-fmtstr-opt, r=brson
Based on an observation that strings and arguments are always interleaved, thanks to #15832. Additionally optimize invocations where formatting parameters are unspecified for all arguments, e.g. `"{} {:?} {:x}"`, by emptying the `__STATIC_FMTARGS` array. Next, `Arguments::new` replaces an empty slice with `None` so that passing empty `__STATIC_FMTARGS` generates slightly less machine code when `Arguments::new` is inlined. Furthermore, formatting itself treats these cases separately without making redundant copies of formatting parameters.

All in all, this adds a single mov instruction per `write!` in most cases. That's why code size has increased.
2014-09-09 23:55:43 +00:00
..
fmt Optimize for the most common cases of format! 2014-09-09 20:34:41 +01:00
num Make integer bit count methods return uints 2014-09-05 14:01:41 +10:00
tuple
any.rs
atomic.rs
bool.rs
cell.rs
char.rs Fix spelling errors and capitalization. 2014-09-03 23:10:38 -04:00
clone.rs
cmp.rs
collections.rs
default.rs
failure.rs
finally.rs
intrinsics.rs Fix spelling errors and capitalization. 2014-09-03 23:10:38 -04:00
iter.rs Flip arguments to std::iter::iterate. 2014-09-07 19:44:30 +02:00
kinds.rs Update language item from 'share' to 'sync' #16988 2014-09-05 02:03:26 +02:00
lib.rs
macros.rs
mem.rs
ops.rs Check traits for built-in bounds in impls 2014-09-09 10:41:27 +12:00
option.rs
prelude.rs
ptr.rs
raw.rs
result.rs
simd.rs
slice.rs Optimize Slice::reverse 2014-09-05 14:12:20 -07:00
str.rs Fix spelling errors and capitalization. 2014-09-03 23:10:38 -04:00
ty.rs