-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Rollup of 7 pull requests #93548
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Rollup of 7 pull requests #93548
Conversation
…roideabi` rlib I ran `./x.py dist --host= --target=armv7-linux-androideabi` before this diff: ``` $ nm build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/armv7-linux-androideabi/lib/libcompiler_builtins-3d9661a82c59c66a.rlib 2> /dev/null | grep __sync_fetch_and_add_4 | wc -l 2 ``` And after: ``` $ nm build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/armv7-linux-androideabi/lib/libcompiler_builtins-ffd2745070943321.rlib 2> /dev/null | grep __sync_fetch_and_add_4 | wc -l 1 ``` Fixes rust-lang#93310
it ignored regions and constants in adts, but didn't do so for references or any other types. This seemed quite weird
…=nagisa Enable combining `+crt-static` and `relocation-model=pic` on `x86_64-unknown-linux-gnu` Modern `gcc` versions support `-static-pie`, and `rustc` will already fall-back to `-static` if the local `gcc` is too old (and hence this change is optimistic rather than absolute). This brings the `-musl` and `-gnu` targets to feature compatibility (albeit with different default settings). Of note a `-static` or `-static-pie` binary based on glibc that uses NSS-backed functions (`gethostbyname` or `getpwuid` etc.) need to have access to the `libnss_X.so.2` libraries and any of their dynamic dependencies. I wasn't sure about the `# only`/`# ignore` changes (I've not got a `gnux32` toolchain to test with hence not also enabling `-static-pie` there).
Implement `RawWaker` and `Waker` getters for underlying pointers implement rust-lang#87021 New APIs: - `RawWaker::data(&self) -> *const ()` - `RawWaker::vtable(&self) -> &'static RawWakerVTable` - ~`Waker::as_raw_waker(&self) -> &RawWaker`~ `Waker::as_raw(&self) -> &RawWaker` This third one is an auxiliary function to make the two APIs above more useful. Since we can only get `&Waker` in `Future::poll`, without this, we need to `transmute` it into `&RawWaker` (relying on `repr(transparent)`) in order to access its data/vtable pointers. ~Not sure if it should be named `as_raw` or `as_raw_waker`. Seems we always use `as_<something-raw>` instead of just `as_raw`. But `as_raw_waker` seems not quite consistent with `Waker::from_raw`.~ As suggested in rust-lang#91828 (comment), use `as_raw`.
…=Mark-Simulacrum Eliminate duplicate codes of is_single_fp_element There are duplicate codes of is_single_fp_element function. Merge these codes to TyAndLayout impl block. 
add rustc lint, warning when iterating over hashmaps 2 first introduced in rust-lang#89558 and reverted in rust-lang#90380 due to its perf impact r? ``@estebank``
implement a lint for suspicious auto trait impls cc rust-lang#85048 (comment) r? ``@nikomatsakis``
remove `TyS::same_type` This function ignored regions and constants in adts, but didn't do so for references or any other types. cc rust-lang#93148 (comment)
Update compiler_builtins to fix duplicate symbols in `armv7-linux-androideabi` rlib I ran `./x.py dist --host= --target=armv7-linux-androideabi` before this diff: ``` $ nm build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/armv7-linux-androideabi/lib/libcompiler_builtins-3d9661a82c59c66a.rlib 2> /dev/null | grep __sync_fetch_and_add_4 | wc -l 2 ``` And after: ``` $ nm build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/armv7-linux-androideabi/lib/libcompiler_builtins-ffd2745070943321.rlib 2> /dev/null | grep __sync_fetch_and_add_4 | wc -l 1 ``` Fixes rust-lang#93310 See also rust-lang/compiler-builtins#449 and rust-lang/compiler-builtins#450
@bors r+ rollup=never p=7 |
@matthiaskrgr: 🔑 Insufficient privileges: Not in reviewers |
@bors r+ rollup=never p=7 |
📌 Commit 019c140 has been approved by |
☀️ Test successful - checks-actions |
Finished benchmarking commit (ad88831): comparison url. Summary: This benchmark run did not return any relevant results. If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. @rustbot label: -perf-regression |
Successful merges:
+crt-static
andrelocation-model=pic
onx86_64-unknown-linux-gnu
#86374 (Enable combining+crt-static
andrelocation-model=pic
onx86_64-unknown-linux-gnu
)RawWaker
andWaker
getters for underlying pointers #91828 (ImplementRawWaker
andWaker
getters for underlying pointers)TyS::same_type
#93290 (removeTyS::same_type
)armv7-linux-androideabi
rlib #93436 (Update compiler_builtins to fix duplicate symbols inarmv7-linux-androideabi
rlib)Failed merges:
r? @ghost
@rustbot modify labels: rollup
Create a similar rollup