rust/library/std/src
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
..
backtrace remove redundant imports 2023-12-10 10:56:22 +08:00
collections update version placeholders 2025-05-12 15:33:30 +02:00
ffi update version placeholders 2025-05-12 15:33:30 +02:00
fs [win][arm64] Disable FS tests that require symlinks 2025-05-07 11:12:11 -07:00
hash remove const_hash feature leftovers 2024-11-02 11:27:14 +01:00
io update cfg(bootstrap) 2025-05-12 15:33:37 +02:00
net ToSocketAddrs: fix typo 2025-04-04 14:47:04 +02:00
os Rollup merge of #141013 - federico-terzi:feat/command_startupinfo_windows, r=joboet 2025-05-16 07:19:42 +02:00
prelude update cfg(bootstrap) 2025-05-12 15:33:37 +02:00
process std: Apply deprecated_safe_2024 2025-02-13 13:10:28 -08:00
sync Rollup merge of #140783 - veluca93:oncelock-docs, r=jhpratt 2025-05-10 16:26:03 +02:00
sys Auto merge of #138087 - tgross35:core-float-math, r=Amanieu 2025-05-17 19:31:39 +00:00
sys_common std: get rid of sys_common::process 2025-04-28 11:13:50 +02:00
thread update cfg(bootstrap) 2025-05-12 15:33:37 +02:00
alloc.rs use generic Atomic type where possible 2025-04-27 02:18:08 +03:00
ascii.rs Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
backtrace.rs use generic Atomic type where possible 2025-04-27 02:18:08 +03:00
bstr.rs Implement ByteStr and ByteString types 2025-01-11 06:35:21 +02:00
env.rs Delegate to inner vec::IntoIter from env::ArgsOs 2025-05-01 15:18:15 -07:00
error.rs Move std::error unit tests to integration tests 2025-01-26 10:28:04 +00:00
f16.rs Initial implementation of core_float_math 2025-05-13 22:08:18 +00:00
f32.rs Initial implementation of core_float_math 2025-05-13 22:08:18 +00:00
f64.rs Initial implementation of core_float_math 2025-05-13 22:08:18 +00:00
f128.rs Initial implementation of core_float_math 2025-05-13 22:08:18 +00:00
fs.rs Rollup merge of #140595 - lolbinarycat:std-set_permissions-typo, r=cuviper 2025-05-03 12:44:36 +02:00
keyword_docs.rs Rollup merge of #140197 - ktnlvr:master, r=workingjubilee 2025-05-02 22:17:01 +10:00
lib.miri.rs add 'x.py miri', and make it work for 'library/{core,alloc,std}' 2024-04-03 20:27:20 +02:00
lib.rs Initial implementation of core_float_math 2025-05-13 22:08:18 +00:00
macros.rs fix doc path in std::fmt macro 2025-02-25 09:08:22 +05:30
num.rs Move std::num unit tests to integration tests 2025-01-26 10:28:04 +00:00
panic.rs use generic Atomic type where possible 2025-04-27 02:18:08 +03:00
panicking.rs use generic Atomic type where possible 2025-04-27 02:18:08 +03:00
pat.rs Add pattern types to parser 2024-04-08 11:57:17 +00:00
path.rs Rollup merge of #140159 - thaliaarchi:pathbuf-extension, r=workingjubilee 2025-05-02 22:17:00 +10:00
process.rs std: get rid of sys_common::process 2025-04-28 11:13:50 +02:00
random.rs Unify cygwin & horizon random impl 2025-03-10 21:23:32 +08:00
rt.rs deduplicate abort implementations 2025-05-15 11:20:13 +02:00
test_helpers.rs std: get rid of sys_common::io 2025-02-07 16:54:07 +01:00
time.rs Be more specific about the error in the SystemTime example 2025-04-17 11:57:28 -05:00