about summary refs log tree commit diff
path: root/compiler/rustc_codegen_llvm/src/errors.rs
diff options
context:
space:
mode:
authorLukas Bergdoll <lukas.bergdoll@gmail.com>2024-04-16 20:24:21 +0200
committerLukas Bergdoll <lukas.bergdoll@gmail.com>2024-05-16 17:08:55 +0200
commite49be415cdc24d876403e8493e28ec1bfee62427 (patch)
treeca7642546e375b0cd12e3cfb402ce49f57e8e368 /compiler/rustc_codegen_llvm/src/errors.rs
parent4a78c00e227124ff9d5ece2d493472e7325c87d3 (diff)
downloadrust-e49be415cdc24d876403e8493e28ec1bfee62427.tar.gz
rust-e49be415cdc24d876403e8493e28ec1bfee62427.zip
Replace sort implementations
- `slice::sort` -> driftsort
  https://github.com/Voultapher/sort-research-rs/blob/main/writeup/driftsort_introduction/text.md

- `slice::sort_unstable` -> ipnsort
  https://github.com/Voultapher/sort-research-rs/blob/main/writeup/ipnsort_introduction/text.md

Replaces the sort implementations with tailor made ones that strike a
balance of run-time, compile-time and binary-size, yielding run-time and
compile-time improvements. Regressing binary-size for `slice::sort`
while improving it for `slice::sort_unstable`. All while upholding the
existing soft and hard safety guarantees, and even extending the soft
guarantees, detecting strict weak ordering violations with a high chance
and reporting it to users via a panic.

In addition the implementation of `select_nth_unstable` is also adapted
as it uses `slice::sort_unstable` internals.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/errors.rs')
0 files changed, 0 insertions, 0 deletions