Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup of 10 pull requests #130253

Merged
merged 27 commits into from
Sep 12, 2024
Merged

Rollup of 10 pull requests #130253

merged 27 commits into from
Sep 12, 2024

Conversation

workingjubilee
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

madsmtm and others added 27 commits September 8, 2024 09:12
In rust-lang#124748, I mistakenly conflated
"not SjLj" to mean "ARM EHABI", which isn't true, watchOS armv7k
(specifically only that architecture) uses a third unwinding method
called "DWARF CFI".
- remove an outdated FIXME
- add reference to floating-point semantics issue

Co-authored-by: Jubilee <workingjubilee@gmail.com>
This is needed for Clippy to know that the `#[allow(unused)]` attributes
added by the expansion of `?` are part of the desugaring, and that they
do not come from the user code.

rust-lang/rust-clippy#13380 exhibits a manifestation of this problem.
It seems QNX 7.0 does not support `linkat` at all (most tests were failing). Limiting to QNX 7.0 only, while using `linkat` for the future versions seems like the right path forward (tested on 7.0).

Fixes 129895
…ble, r=compiler-errors

Don't warn empty branches unreachable for now

The [stabilization](rust-lang#122792) of `min_exhaustive_patterns` updated the `unreachable_pattern` lint to trigger on empty arms too. This has caused some amount of churn, and imposes an unjoyful `#[allow(unreachable_patterns)]` onto library authors who want to stay backwards-compatible.

While I think the lint should eventually cover these cases, for transition's sake I'd prefer to revert linting to what it was prior to stabilization, at least for now.

Fixes rust-lang#129031.

r? ``@compiler-errors``
update stdarch

The goal is mostly to pull in rust-lang/stdarch#1633.

r? ```@Amanieu```
…ilee

enable const-float-classify test, and test_next_up/down on 32bit x86

The  test_next_up/down tests have been disabled on all 32bit x86 targets, which goes too far -- they should definitely work on our (tier 1) i686 target, it is only without SSE that we might run into trouble due to rust-lang#114479. However, I cannot reproduce that trouble any more -- maybe that got fixed by rust-lang#123351?

The  const-float-classify test relied on const traits "because we can", and got disabled when const traits got removed. That's an unfortunate reduction in test coverage of our float functionality, so let's restore the test in a way that does not rely on const traits.

The const-float tests are actually testing runtime behavior as well, and I don't think that runtime behavior is covered anywhere else. Probably they shouldn't be called "const-float", but we don't have a `tests/ui/float` folder... should I create one and move them there? Are there any other ui tests that should be moved there?

I also removed some FIXME referring to not use x87 for Rust-to-Rust-calls -- that has happened in rust-lang#123351 so this got fixed indeed. Does that mean we can simplify all that float code again? I am not sure how to test it. Is running the test suite with an i586 target enough?

Cc ```@tgross35``` ```@workingjubilee```
…ingjubilee

Fix linking error when compiling for 32-bit watchOS

In rust-lang#124494 (or rust-lang#124748), I mistakenly conflated "not SjLj" to mean "ARM EHABI", which isn't true, 32-bit watchOS uses a third unwinding method called "DWARF CFI".

So this PR is effectively a revert of rust-lang#124494, with a few more comments explaining what's going on.

Fixes rust-lang#130071.

r? Mark-Simulacrum (since you reviewed the original)
…iler-errors

Remove needless returns detected by clippy in the compiler
…links, r=ChrisDenton

maint: update docs for change_time ext and doc links

maint: update docs for change_time ext and doc links

Related: rust-lang#121478
r? tgross35
…hlin

notify Miri when intrinsics are changed

`@rust-lang/miri` should we notify the entire team, or should I just add myself?
… r=compiler-errors

miri: fix overflow detection for unsigned pointer offset

This is the Miri part of rust-lang#130229. This is already UB in codegen so we better make Miri detect it; updating the docs may take time if we have to follow some approval process, but let's make Miri match reality ASAP.

r? ``@scottmcm``
…-fix, r=jieyouxu

Use the same span for attributes and Try expansion of ?

This is needed for Clippy to know that the `#[allow(unused)]` attributes added by the expansion of `?` are part of the desugaring, and that they do not come from the user code.

rust-lang/rust-clippy#13380 exhibits a manifestation of this problem and will be fixed by this change.
Limit `libc::link` usage to `nto70` target only, not NTO OS

It seems QNX 7.0 does not support `linkat` at all (most tests were failing). Limiting to QNX 7.0 only, while using `linkat` for the future versions seems like the right path forward (tested on 7.0).

Fixes rust-lang#129895

CC: `@japaric` `@flba-eb` `@saethlin`
@rustbot rustbot added A-meta Area: Issues & PRs about the rust-lang/rust repository itself O-unix Operating system: Unix-like O-windows Operating system: Windows labels Sep 11, 2024
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Sep 11, 2024
@workingjubilee
Copy link
Member Author

@bors r+ rollup=never p=10

@bors
Copy link
Contributor

bors commented Sep 11, 2024

📌 Commit b4201d3 has been approved by workingjubilee

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 11, 2024
@bors
Copy link
Contributor

bors commented Sep 11, 2024

⌛ Testing commit b4201d3 with merge 3afb2bb...

@bors
Copy link
Contributor

bors commented Sep 12, 2024

☀️ Test successful - checks-actions
Approved by: workingjubilee
Pushing 3afb2bb to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Sep 12, 2024
@bors bors merged commit 3afb2bb into rust-lang:master Sep 12, 2024
7 checks passed
@rustbot rustbot added this to the 1.83.0 milestone Sep 12, 2024
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#129103 Don't warn empty branches unreachable for now 34f6683882faa9e7404a1fc679e7a4c15af53c3f (link)
#129696 update stdarch 68941a6bfc9690ed48d5ab36dfe186e6655bbd90 (link)
#129835 enable const-float-classify test, and test_next_up/down on … 74cdc551e652dc092a4bcd78ac788b5cd3abd71f (link)
#130077 Fix linking error when compiling for 32-bit watchOS 2e9d8309a2c4420a4bb9468251ee58b64447898b (link)
#130114 Remove needless returns detected by clippy in the compiler 20ab8662720e74fd083a183287c0e262012f5d0b (link)
#130168 maint: update docs for change_time ext and doc links cb4bb31192724505a028bbfb1a267cd13361fe26 (link)
#130228 notify Miri when intrinsics are changed 8dafbe7de585773558fd6c22fc8484aa67833ec9 (link)
#130239 miri: fix overflow detection for unsigned pointer offset dc046cf8c0ddfe1b0f2078d6dea9fa1bad406f11 (link)
#130244 Use the same span for attributes and Try expansion of ? 31315112976ab9671c779fb61a2d4182f96c33a4 (link)
#130248 Limit libc::link usage to nto70 target only, not NTO OS 64ab2b86e57eb789f0df1ad1362f7846705fc61f (link)

previous master: 8d6b88b168

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (3afb2bb): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
0.2% [0.2%, 0.2%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.8% [-1.5%, -0.2%] 13
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -0.7% [-1.5%, 0.2%] 14

Max RSS (memory usage)

Results (primary -1.0%, secondary 2.4%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
1.0% [1.0%, 1.0%] 1
Regressions ❌
(secondary)
2.4% [2.4%, 2.4%] 1
Improvements ✅
(primary)
-1.3% [-2.3%, -0.7%] 6
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -1.0% [-2.3%, 1.0%] 7

Cycles

Results (primary -1.5%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-1.5% [-2.0%, -0.9%] 4
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -1.5% [-2.0%, -0.9%] 4

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 756.94s -> 756.901s (-0.01%)
Artifact size: 341.41 MiB -> 341.35 MiB (-0.02%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-meta Area: Issues & PRs about the rust-lang/rust repository itself merged-by-bors This PR was explicitly merged by bors. O-unix Operating system: Unix-like O-windows Operating system: Windows rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.