rust/library/std/src/sys
bors 777d372772 Auto merge of #138087 - tgross35:core-float-math, r=Amanieu
Initial implementation of `core_float_math`

Since [1], `compiler-builtins` makes a certain set of math symbols
weakly available on all platforms. This means we can begin exposing some
of the related functions in `core`, so begin this process here.

It is not possible to provide inherent methods in both `core` and `std`
while giving them different stability gates, so standalone functions are
added instead. This provides a way to experiment with the functionality
while unstable; once it is time to stabilize, they can be converted to
inherent.

For `f16` and `f128`, everything is unstable so we can move the inherent
methods.

The following are included to start:

* floor
* ceil
* round
* round_ties_even
* trunc
* fract
* mul_add
* div_euclid
* rem_euclid
* powi
* sqrt
* abs_sub
* cbrt

These mirror the set of functions that we have in `compiler-builtins`
since [1], with the exception of `powi` that has been there longer.

Details for each of the changes is in the commit messages.

Tracking issue: https://github.com/rust-lang/rust/issues/137578

[1]: https://github.com/rust-lang/compiler-builtins/pull/763

try-job: aarch64-gnu
tru-job: armhf-gnu
try-job: i686-msvc-1
try-job: test-various
try-job: x86_64-mingw-1
try-job: x86_64-mingw-2
2025-05-17 19:31:39 +00:00
..
alloc use generic Atomic type where possible 2025-04-27 02:18:08 +03:00
anonymous_pipe Mv os-specific trait impl of Pipe* into std::os::* 2025-03-14 01:03:56 +11:00
args Implement Iterator::last for vec::IntoIter 2025-05-02 20:08:28 -07:00
env use generic Atomic type where possible 2025-04-27 02:18:08 +03:00
fd Rollup merge of #139667 - 1c3t3a:remove-no-sanitize, r=m-ou-se 2025-04-17 00:16:21 +02:00
fs Fix settimes for vxworks 2025-05-14 13:52:31 +05:30
io Trusty: Implement write_vectored for stdio 2025-03-27 16:49:30 -07:00
net use generic Atomic type where possible 2025-04-27 02:18:08 +03:00
os_str Make internal OsString::truncate and extend_from_slice unsafe 2025-04-30 23:56:39 -07:00
pal Rollup merge of #139103 - joboet:abort_dedup, r=tgross35 2025-05-17 15:45:20 +02:00
path Use with_native_path for Windows 2025-04-11 18:02:03 +00:00
personality Rollup merge of #137621 - Berrysoft:cygwin-std, r=joboet 2025-03-17 05:47:49 -04:00
process wire up startupinfo methods 2025-05-14 19:00:56 +02:00
random use generic Atomic type where possible 2025-04-27 02:18:08 +03:00
stdio Rollup merge of #139517 - Ayush1325:uefi-cmd-stdin-null, r=joboet 2025-04-15 15:47:25 +10:00
sync collect all Fuchsia bindings into the fuchsia module 2025-05-05 12:16:40 +02:00
thread_local use generic Atomic type where possible 2025-04-27 02:18:08 +03:00
backtrace.rs Improve comments for the default backtrace printer 2024-12-04 20:54:37 -05:00
cmath.rs Initial implementation of core_float_math 2025-05-13 22:08:18 +00:00
env_consts.rs Move zkVM constants into sys::env_consts 2025-04-21 21:05:04 -07:00
exit_guard.rs std: use the address of errno to identify threads in unique_thread_exit 2025-04-01 13:35:16 +02:00
mod.rs Move sys::pal::os::Env into sys::env 2025-04-21 20:56:43 -07:00