Jonathan Brouwer
00d849a1b9
Rollup merge of #152591 - alexcrichton:simplify-rc-arc-default, r=joboet
...
Simplify internals of `{Rc,Arc}::default`
This commit simplifies the internal implementation of `Default` for these two pointer types to have the same performance characteristics as before (a side effect of changes in rust-lang/rust#131460 ) while avoid use of internal private APIs of Rc/Arc. To preserve the same codegen as before some non-generic functions needed to be tagged as `#[inline]` as well, but otherwise the same IR is produced before/after this change.
The motivation of this commit is I was studying up on the state of initialization of `Arc` and `Rc` and figured it'd be nicer to reduce the use of internal APIs and instead use public stable APIs where possible, even in the implementation itself.
2026-02-22 11:31:13 +01:00
..
2025-09-16 11:49:20 -07:00
2025-08-20 22:29:45 -04:00
2025-11-21 13:04:48 -06:00
2025-08-20 22:29:45 -04:00
2025-08-20 22:29:45 -04:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-08-21 11:07:25 +01:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-08-21 11:07:25 +01:00
2025-07-22 14:28:48 +02:00
2025-11-21 13:04:48 -06:00
2025-07-22 14:28:48 +02:00
2025-08-21 11:07:25 +01:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-09-16 11:49:20 -07:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-08-11 22:00:41 +00:00
2025-07-22 14:28:48 +02:00
2026-02-17 10:11:01 +08:00
2025-11-21 13:04:48 -06:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2026-02-14 10:56:42 -08:00
2025-07-22 14:28:48 +02:00
2025-08-21 11:07:25 +01:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-09-02 12:04:04 +02:00
2025-07-22 14:28:48 +02:00
2025-11-21 13:04:48 -06:00
2025-07-22 14:28:48 +02:00
2026-02-17 10:11:01 +08:00
2025-08-13 14:24:28 +00:00
2025-07-22 14:28:48 +02:00
2025-07-22 14:28:48 +02:00
2025-09-16 11:49:20 -07:00
2025-07-22 14:28:48 +02:00
2026-01-20 21:37:31 +00:00
2025-11-19 11:55:09 +00:00
2025-09-16 11:49:20 -07:00
2026-02-04 19:20:10 +01:00
2026-01-03 12:50:38 +10:30
2025-08-20 22:29:45 -04:00
2025-08-20 22:29:45 -04:00
2025-11-21 13:04:48 -06:00
2025-08-07 15:11:52 -04:00
2025-08-20 22:29:45 -04:00
2025-07-22 14:28:48 +02:00