- 21 6月, 2022 1 次提交
-
-
由 Mara Bos 提交于
-
- 14 6月, 2022 2 次提交
-
-
-
由 Meziu 提交于
Co-authored-by: NIan Chamberlain <ian.h.chamberlain@gmail.com> Co-authored-by: NMark Drobnak <mark.drobnak@gmail.com>
-
- 06 6月, 2022 2 次提交
- 03 6月, 2022 2 次提交
- 30 5月, 2022 1 次提交
-
-
由 est31 提交于
The oldest occurence is from 9e224c2b, which is from the pre-1.0 days. In the years since then, std::sys still hasn't been exported, and the last attempt was met with strong criticism: https://github.com/rust-lang/rust/pull/97151 Thus, removing the "yet" part makes a lot of sense.
-
- 09 5月, 2022 1 次提交
-
-
由 Mara Bos 提交于
-
- 03 5月, 2022 1 次提交
-
-
由 Mara Bos 提交于
The latest NetBSD release doesn't include the futex syscall yet.
-
- 02 5月, 2022 4 次提交
-
-
由 Austin Kiekintveld 提交于
-
由 Austin Kiekintveld 提交于
-
由 Austin Kiekintveld 提交于
`SameMutexCheck` only requires atomicity for `self.addr`, but does not need ordering of other memory accesses in either the success or failure case. Using `Relaxed`, the code still correctly handles the case when two threads race to store an address.
-
由 Austin Kiekintveld 提交于
`min_stack` does not provide any synchronization guarantees to its callers, and only requires atomicity for `MIN` itself, so relaxed memory ordering is sufficient.
-
- 29 4月, 2022 4 次提交
- 26 4月, 2022 1 次提交
-
-
由 Aron Parker 提交于
-
- 25 4月, 2022 1 次提交
-
-
由 joboet 提交于
Mutex and Condvar are being replaced by more efficient implementations, which need thread parking themselves (see #93740). Therefore use the pthread synchronization primitives directly. Also, avoid allocating because the Parker struct is being placed in an Arc anyways.
-
- 16 4月, 2022 1 次提交
-
-
由 Mara Bos 提交于
-
- 14 4月, 2022 1 次提交
-
-
由 Mara Bos 提交于
-
- 12 4月, 2022 3 次提交
- 06 4月, 2022 1 次提交
-
-
由 Mara Bos 提交于
-
- 30 3月, 2022 1 次提交
-
-
由 Aria Beingessner 提交于
Some things like the unwinders and system APIs are not fully conformant, this only covers a lot of low-hanging fruit.
-
- 21 3月, 2022 1 次提交
-
-
由 Mara Bos 提交于
-
- 10 3月, 2022 1 次提交
-
-
由 T-O-R-U-S 提交于
This updates the standard library's documentation to use the new syntax. The documentation is worthwhile to update as it should be more idiomatic (particularly for features like this, which are nice for users to get acquainted with). The general codebase is likely more hassle than benefit to update: it'll hurt git blame, and generally updates can be done by folks updating the code if (and when) that makes things more readable with the new format. A few places in the compiler and library code are updated (mostly just due to already having been done when this commit was first authored).
-
- 21 2月, 2022 2 次提交
-
-
由 Chris Copeland 提交于
POSIX allows `getsockopt` to set `*option_len` to a smaller value if necessary. Windows will set `*option_len` to 1 for boolean options even when the caller passes a `BOOL` (`int`) with `*option_len` as 4.
-
由 Chris Copeland 提交于
Previously `level` was named `opt` and `option_name` was named `val`, then extra names of `payload` or `slot` were used for the option value. This change aligns the wrapper parameters with their names in POSIX. Winsock uses similar but more abbreviated names: `level`, `optname`, `optval`, `optlen`.
-
- 05 2月, 2022 1 次提交
-
-
由 Thom Chiovoloni 提交于
-
- 03 2月, 2022 1 次提交
-
-
由 Mark Rousskov 提交于
-
- 25 1月, 2022 1 次提交
-
-
由 Chris Denton 提交于
-
- 17 1月, 2022 1 次提交
-
-
由 Kornel 提交于
-
- 29 12月, 2021 2 次提交
-
-
由 Konrad Borowski 提交于
It's not being used and uses unsound set_var and remove_var functions.
-
由 Xuanwo 提交于
Signed-off-by: NXuanwo <github@xuanwo.io>
-
- 28 12月, 2021 1 次提交
-
-
由 Xuanwo 提交于
Signed-off-by: NXuanwo <github@xuanwo.io>
-
- 14 12月, 2021 1 次提交
-
-
由 Frank Steffahn 提交于
-
- 22 11月, 2021 1 次提交
-
-
由 Eduardo Sánchez Muñoz 提交于
The functions are now `unsafe` and they use `Option::unwrap_unchecked` instead of `unwrap_or_0` `unwrap_or_0` was added in 42357d77. I guess `unwrap_unchecked` was not available back then. Given this example: ```rust pub fn first_char(s: &str) -> Option<char> { s.chars().next() } ``` Previously, the following assembly was produced: ```asm _ZN7example10first_char17ha056ddea6bafad1cE: .cfi_startproc test rsi, rsi je .LBB0_1 movzx edx, byte ptr [rdi] test dl, dl js .LBB0_3 mov eax, edx ret .LBB0_1: mov eax, 1114112 ret .LBB0_3: lea r8, [rdi + rsi] xor eax, eax mov r9, r8 cmp rsi, 1 je .LBB0_5 movzx eax, byte ptr [rdi + 1] add rdi, 2 and eax, 63 mov r9, rdi .LBB0_5: mov ecx, edx and ecx, 31 cmp dl, -33 jbe .LBB0_6 cmp r9, r8 je .LBB0_9 movzx esi, byte ptr [r9] add r9, 1 and esi, 63 shl eax, 6 or eax, esi cmp dl, -16 jb .LBB0_12 .LBB0_13: cmp r9, r8 je .LBB0_14 movzx edx, byte ptr [r9] and edx, 63 jmp .LBB0_16 .LBB0_6: shl ecx, 6 or eax, ecx ret .LBB0_9: xor esi, esi mov r9, r8 shl eax, 6 or eax, esi cmp dl, -16 jae .LBB0_13 .LBB0_12: shl ecx, 12 or eax, ecx ret .LBB0_14: xor edx, edx .LBB0_16: and ecx, 7 shl ecx, 18 shl eax, 6 or eax, ecx or eax, edx ret ``` After this change, the assembly is reduced to: ```asm _ZN7example10first_char17h4318683472f884ccE: .cfi_startproc test rsi, rsi je .LBB0_1 movzx ecx, byte ptr [rdi] test cl, cl js .LBB0_3 mov eax, ecx ret .LBB0_1: mov eax, 1114112 ret .LBB0_3: mov eax, ecx and eax, 31 movzx esi, byte ptr [rdi + 1] and esi, 63 cmp cl, -33 jbe .LBB0_4 movzx edx, byte ptr [rdi + 2] shl esi, 6 and edx, 63 or edx, esi cmp cl, -16 jb .LBB0_7 movzx ecx, byte ptr [rdi + 3] and eax, 7 shl eax, 18 shl edx, 6 and ecx, 63 or ecx, edx or eax, ecx ret .LBB0_4: shl eax, 6 or eax, esi ret .LBB0_7: shl eax, 12 or eax, edx ret ```
-