rust/library
Matthias Krüger 273fbf47ab
Rollup merge of #111282 - scottmcm:remove-unneeded-assumes, r=workingjubilee
Remove some `assume`s from slice iterators that don't do anything

Because the start pointer is iterators is already a `NonNull`, we emit the appropriate `!nonnull` metadata when loading the pointer to tell LLVM that it's non-null.

Probably the best way to see that it's the metadata that's important (and not the `assume`) is to observe that LLVM actually *removes* the `assume` from the optimized IR: <https://rust.godbolt.org/z/KhE6G963n>.

(I also checked that, yes, the if-not-ZST `assume` on `end` is still doing something: it's how there's a `!nonnull` metadata on its load, even though it's an ordinary raw pointer.  The codegen test added in this PR fails if the other `assume` is  removed.)
2023-05-09 20:49:33 +02:00
..
alloc Rollup merge of #97320 - usbalbin:stabilize_const_ptr_read, r=m-ou-se 2023-05-09 20:49:30 +02:00
backtrace@4245978ca8 PS Vita std support 2023-05-07 18:57:43 +03:00
core Rollup merge of #111282 - scottmcm:remove-unneeded-assumes, r=workingjubilee 2023-05-09 20:49:33 +02:00
panic_abort
panic_unwind Partial stabilisation of c_unwind 2023-04-29 13:01:44 +01:00
portable-simd Make sure that signatures aren't accidental refinements 2023-04-28 17:36:49 +00:00
proc_macro fix TODO comments 2023-05-02 10:32:07 +00:00
profiler_builtins
rtstartup
rustc-std-workspace-alloc
rustc-std-workspace-core
rustc-std-workspace-std
std Auto merge of #110285 - KisaragiEffective:sync-stdarch, r=Amanieu 2023-05-09 12:28:34 +00:00
stdarch@7e2cdc675b stdarch: update submodule, take 5 2023-05-08 19:03:55 +09:00
sysroot Add a sysroot crate to represent the standard library crates 2023-04-25 13:40:36 +02:00
test Rollup merge of #110651 - durin42:xunit-stdout, r=cuviper 2023-05-04 19:18:18 +02:00
unwind