Unnamed repository; edit this file 'description' to name the repository.
Auto merge of #151622 - scottmcm:elide-more-transmutes, r=cjgillot
GVN: Elide more intermediate transmutes We already skipped intermediate steps like `u32` or `i32` that support any (initialized) value. This extends that to also allow skipping intermediate steps whose values are a superset of either the source or destination type. Most importantly, that means that `usize` → `NonZeroUsize` → `ptr::Alignment` and `ptr::Alignment` → `NonZeroUsize` → `usize` can skip the middle because `NonZeroUsize` is a superset of `Alignment`. Then `Alignment::as_usize` is updated to take advantage of that and let us remove some more locals in a few places. r? cjgillot
bors 3 months ago
parent 8608137 · parent f1af745 · commit ba0165d
0 files changed, 0 insertions, 0 deletions