| Age | Commit message (Collapse) | Author | Lines |
|
Add Fuchsia to actually_monotonic
Fuchsia provides a fully monotonic clock.
Fix https://github.com/rust-lang/rust/issues/64196
cc @joshlf @tmandry
r? @alexcrichton
|
|
std: Improve downstream codegen in `Command::env`
This commit rejiggers the generics used in the implementation of
`Command::env` with the purpose of reducing the amount of codegen that
needs to happen in consumer crates, instead preferring to generate code
into libstd.
This was found when profiling the compile times of the `cc` crate where
the binary rlib produced had a lot of `BTreeMap` code compiled into it
but the crate doesn't actually use `BTreeMap`. It turns out that
`Command::env` is generic enough to codegen the entire implementation in
calling crates, but in this case there's no performance concern so it's
fine to compile the code into the standard library.
This change is done by removing the generic on the `CommandEnv` map
which is intended to handle case-insensitive variables on Windows.
Instead now a generic isn't used but rather a `use` statement defined
per-platform is used.
With this commit a debug build of `Command::new("foo").env("a", "b")`
drops from 21k lines of LLVM IR to 10k.
|
|
Use wasi crate for Core API
Blocked by: CraneStation/rust-wasi#5
Blocks: rust-lang/libc#1461
cc @sunfishcode @alexcrichton
|
|
sync with rust-lang/rust master branch
|
|
Fuchsia provides a fully monotonic clock.
|
|
This commit rejiggers the generics used in the implementation of
`Command::env` with the purpose of reducing the amount of codegen that
needs to happen in consumer crates, instead preferring to generate code
into libstd.
This was found when profiling the compile times of the `cc` crate where
the binary rlib produced had a lot of `BTreeMap` code compiled into it
but the crate doesn't actually use `BTreeMap`. It turns out that
`Command::env` is generic enough to codegen the entire implementation in
calling crates, but in this case there's no performance concern so it's
fine to compile the code into the standard library.
This change is done by removing the generic on the `CommandEnv` map
which is intended to handle case-insensitive variables on Windows.
Instead now a generic isn't used but rather a `use` statement defined
per-platform is used.
With this commit a debug build of `Command::new("foo").env("a", "b")`
drops from 21k lines of LLVM IR to 10k.
|
|
Fix unlock ordering in SGX synchronization primitives
Avoid holding spinlocks during usercalls. This should avoid deadlocks in certain pathological scheduling cases.
cc @mzohreva @parthsane
r? @alexcrichton
|
|
danielhenrymantilla:add_comment_about_uninit_integers, r=Centril
Added warning around code with reference to uninit bytes
Officially, uninitialized integers, and therefore, Rust references to them are _invalid_ (note that this may evolve into official defined behavior (_c.f._, https://github.com/rust-lang/unsafe-code-guidelines/issues/71)).
However, `::std` uses references to uninitialized integers when working with the `Read::initializer` feature (#42788), since it relies on this unstably having defined behavior with the current implementation of the compiler (IIUC).
Hence the comment to disincentivize people from using this pattern outside the standard library.
|
|
Stabilize checked_duration_since for 1.38.0
Looks like it has already found some use in projects.
Resolves #58402.
|
|
|
|
Resolves #58402.
|
|
sync with rust-lang/rust branch master
|
|
|
|
|
|
|
|
initial stack size to rtpSpawn
|
|
Update sync condvar doc style
|
|
Update BufWriter example to include call to flush()
I was playing with a writing a Huffman encoder/decoder and was getting weird corruptions and truncations. I finally realized it was was because `BufWriter` was swallowing write errors 😬. I've found Rust to generally be explicit and err on the safe side, so I definitely found this unintuitive and not "rustic".
https://twitter.com/johnterickson/status/1159514988123312128
|
|
remove directory libstd/sys/vxworks/backtrace which is not used any more
r? @alexcrichton
cc @n-salim
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Match the loop examples
The idea is to show the usefulness of the expression side by side.
|
|
|
|
|
|
|
|
|
|
|
|
std: Remove the `wasm_syscall` feature
This commit removes the `wasm_syscall` feature from the
wasm32-unknown-unknown build of the standard library. This feature was
originally intended to allow an opt-in way to interact with the
operating system in a posix-like way but it was never stabilized.
Nowadays with the advent of the `wasm32-wasi` target that should
entirely replace the intentions of the `wasm_syscall` feature.
|
|
remove the reference to __cxa_thread_atexit_impl
r? @alexcrichton
cc @n-salim
|
|
This commit removes the `wasm_syscall` feature from the
wasm32-unknown-unknown build of the standard library. This feature was
originally intended to allow an opt-in way to interact with the
operating system in a posix-like way but it was never stabilized.
Nowadays with the advent of the `wasm32-wasi` target that should
entirely replace the intentions of the `wasm_syscall` feature.
|
|
|
|
Fixed floating point issue with asinh function
This should fixes #63271 , in which `asinh(-0.0)` returns `0.0` instead of `-0.0`.
according to @nagisa
>
>
> IEEE-754 (2008), section 9.2.1:
>
> > For the functions expm1, exp2m1, exp10m1, logp1, log2p1, log10p1, sin, tan, sinPi, atanPi, asin, atan, sinh, tanh, asinh, and atanh, f(+0) is +0 and f(−0) is −0 with no exception.
>
> and
>
> > sinh(±∞) and asinh(±∞) are ±∞ with no exception.
After ensuring that the function `asinh` is the only function affected (functions like `sin`, `sinh` are all based on `cmath` library or `llvm` intrinsics), and that `atanh` always gives the correct result. The only function to modify is `asinh`.
|
|
VxWorks does not provide a way to set the task name except at creation time
Make set_name do thing as VxWorks does not provide a way to set the task name except at creation time.
r? @alexcrichton
cc @n-salim
|
|
Co-Authored-By: lzutao <taolzu@gmail.com>
|
|
|
|
|
|
std::fs::read_dir
|
|
|
|
Implement decode_error_kind for wasi
Based on the implementation for unix targets,
|
|
|
|
Based on the implementation for unix targets
|
|
Update occurences of as_slice to as_str in comments
Fix #63792
|
|
Re-enable Redox builder (take 2)
Closes: #63160
|
|
behavior), so skip the following tests:
net::tcp::tests::timeouts
net::udp::tests::timeouts
|
|
Update occurences of as_slice to as_str
|