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

Update to LLVM 16.0.5 #112312

Merged
merged 1 commit into from
Jun 6, 2023
Merged

Update to LLVM 16.0.5 #112312

merged 1 commit into from
Jun 6, 2023

Conversation

nikic
Copy link
Contributor

@nikic nikic commented Jun 5, 2023

Rebase to LLVM 16.0.5, plus one cherry-pick.

Fixes #111823.
Fixes #112061.
Fixes #112170.

@rustbot
Copy link
Collaborator

rustbot commented Jun 5, 2023

r? @cuviper

(rustbot has picked a reviewer for you, use r? to override)

@rustbot
Copy link
Collaborator

rustbot commented Jun 5, 2023

⚠️ Warning ⚠️

  • These commits modify submodules.

@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 5, 2023
@cuviper
Copy link
Member

cuviper commented Jun 5, 2023

@bors r+ rollup=never

@bors
Copy link
Contributor

bors commented Jun 5, 2023

📌 Commit 5ff8767 has been approved by cuviper

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 Jun 5, 2023
@bors
Copy link
Contributor

bors commented Jun 6, 2023

⌛ Testing commit 5ff8767 with merge cb797b2f3cfbe11360fc0734222c1d052b696de5...

@bors
Copy link
Contributor

bors commented Jun 6, 2023

💥 Test timed out

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

nikic commented Jun 6, 2023

@bors retry

@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 Jun 6, 2023
@bors
Copy link
Contributor

bors commented Jun 6, 2023

⌛ Testing commit 5ff8767 with merge 3572d74...

@bors bors mentioned this pull request Jun 6, 2023
@bors
Copy link
Contributor

bors commented Jun 6, 2023

☀️ Test successful - checks-actions
Approved by: cuviper
Pushing 3572d74 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jun 6, 2023
@bors bors merged commit 3572d74 into rust-lang:master Jun 6, 2023
11 checks passed
@rustbot rustbot added this to the 1.72.0 milestone Jun 6, 2023
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (3572d74): comparison URL.

Overall result: ❌✅ regressions and improvements - ACTION NEEDED

Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please open an issue or create a new PR that fixes the regressions, add a comment linking to the newly created issue or PR, and then add the perf-regression-triaged label to this PR.

@rustbot label: +perf-regression
cc @rust-lang/wg-compiler-performance

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
Regressions ❌
(secondary)
0.3% [0.2%, 0.3%] 5
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-5.2% [-5.2%, -5.2%] 1
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results

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)
-0.9% [-0.9%, -0.9%] 1
Improvements ✅
(secondary)
-4.6% [-4.6%, -4.6%] 1
All ❌✅ (primary) -0.9% [-0.9%, -0.9%] 1

Cycles

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

Binary size

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

Bootstrap: 646.658s -> 646.759s (0.02%)

@rustbot rustbot added the perf-regression Performance regression. label Jun 6, 2023
@nikic nikic added the beta-nominated Nominated for backporting to the compiler in the beta channel. label Jun 6, 2023
@nikic
Copy link
Contributor Author

nikic commented Jun 6, 2023

Beta nominating for miscompilation fixes.

@pnkfelix
Copy link
Member

  • effects are all to secondary benchmarks
  • effects are small enough that they would not block an LLVM upgrade
  • marking as triaged.

@rustbot label: +perf-regression-triaged

@rustbot rustbot added the perf-regression-triaged The performance regression has been triaged. label Jun 13, 2023
@apiraino apiraino added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label Jun 14, 2023
@apiraino
Copy link
Contributor

Beta backport approved as per compiler team on Zulip

@rustbot label +beta-accepted

@rustbot rustbot added the beta-accepted Accepted for backporting to the compiler in the beta channel. label Jun 15, 2023
@Mark-Simulacrum Mark-Simulacrum removed the beta-nominated Nominated for backporting to the compiler in the beta channel. label Jun 24, 2023
@Mark-Simulacrum Mark-Simulacrum modified the milestones: 1.72.0, 1.71.0 Jun 24, 2023
bors added a commit to rust-lang-ci/rust that referenced this pull request Jun 24, 2023
…k-Simulacrum

[beta] backport

This PR backports:

- rust-lang#112684: Disable alignment checks on i686-pc-windows-msvc
- rust-lang#112581: [rustdoc] Fix URL encoding of % sign
- rust-lang#112312: Update to LLVM 16.0.5
- rust-lang#112266: Fix type-inference regression in rust-lang#112225
- rust-lang#112062: Make struct layout not depend on unsizeable tail

r? `@Mark-Simulacrum`
@nagisa
Copy link
Member

nagisa commented Jul 16, 2023

This ended up fixing a fair number of issues, but none of them have a rust-side test of any sort.

Given that at least two of the three issues had a fairly minimal Rust reproducer, would it make sense to add those reproducers to our test suite, or are we confident that testing on the LLVM side is sufficient here?

@nikic
Copy link
Contributor Author

nikic commented Jul 16, 2023

I don't think we should have Rust-side tests for LLVM bugs. Especially fuzzer generated test cases are quite unlikely to keep testing the relevant code paths over time.

Testing LLVM behavior on the Rust side is useful if we're testing end-to-end optimization behavior, which is affected both by the IR rust generates and phase ordering in LLVM -- this is usually only relevant for tests guarding against optimization regressions, and certain end-to-end miscompilations (e.g. infinite loop removal).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
beta-accepted Accepted for backporting to the compiler in the beta channel. merged-by-bors This PR was explicitly merged by bors. perf-regression Performance regression. perf-regression-triaged The performance regression has been triaged. 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.
Projects
None yet
9 participants