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

rustbuild: Build tests with LLD if use-lld = true was passed #76378

Merged
merged 5 commits into from
Sep 10, 2020

Conversation

petrochenkov
Copy link
Contributor

@petrochenkov petrochenkov commented Sep 5, 2020

Addresses #76127 (comment).

Our test suite is generally ready to run with an explicitly specified linker (#45191),
so LLD specified with use-lld = true works as well.

Only 4 tests fail (on x86_64-pc-windows-msvc):

ui/panic-runtime/lto-unwind.rs
run-make-fulldeps/debug-assertions
run-make-fulldeps/foreign-exceptions
run-make-fulldeps/test-harness

All of them are legitimate issues with LLD (or at least with combination Rust+LLD) and manifest in segfaults on access to TLS (#76127 (comment)). UPD: These issues are caused by #72145 and appear because I had -Ctarget-cpu=native set.

UPD: Further commits build tests with LLD for non-MSVC targets and propagate LLD to more places when use-lld is enabled.

@rust-highfive
Copy link
Collaborator

r? @Mark-Simulacrum

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

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Sep 5, 2020
@bors

This comment has been minimized.

@mati865
Copy link
Contributor

mati865 commented Sep 8, 2020

Could you also update this line?

# LLD will not be used if we're cross linking or running tests.

@petrochenkov
Copy link
Contributor Author

Could you also update this line?

Done.

@Mark-Simulacrum
Copy link
Member

@bors r+

@bors
Copy link
Contributor

bors commented Sep 9, 2020

📌 Commit 75a2c68 has been approved by Mark-Simulacrum

@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 9, 2020
@bors
Copy link
Contributor

bors commented Sep 10, 2020

⌛ Testing commit 75a2c68 with merge 25b2f48...

@rust-log-analyzer
Copy link
Collaborator

The job x86_64-apple of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
      Memory: 12 GB
      Boot ROM Version: VMW71.00V.13989454.B64.1906190538
      Apple ROM Info: [MS_VM_CERT/SHA1/27d66596a61c48dd3dc7216fd715126e33f59ae7]Welcome to the Virtual Machine
      SMC Version (system): 2.8f0
      Serial Number (system): VMWVz+YuxLFe

hw.ncpu: 4
hw.byteorder: 1234
hw.memsize: 12884901888
---
[TIMING] Compiletest { compiler: Compiler { stage: 2, host: TargetSelection { triple: "x86_64-apple-darwin", file: None } }, target: TargetSelection { triple: "x86_64-apple-darwin", file: None }, mode: "debuginfo", suite: "debuginfo", path: "src/test/debuginfo", compare_mode: None } -- 0.435
[TIMING] Compiletest { compiler: Compiler { stage: 2, host: TargetSelection { triple: "x86_64-apple-darwin", file: None } }, target: TargetSelection { triple: "x86_64-apple-darwin", file: None }, mode: "ui", suite: "ui-fulldeps", path: "src/test/ui-fulldeps", compare_mode: None } -- 0.489
[TIMING] Compiletest { compiler: Compiler { stage: 2, host: TargetSelection { triple: "x86_64-apple-darwin", file: None } }, target: TargetSelection { triple: "x86_64-apple-darwin", file: None }, mode: "rustdoc", suite: "rustdoc", path: "src/test/rustdoc", compare_mode: None } -- 0.371
[TIMING] Compiletest { compiler: Compiler { stage: 2, host: TargetSelection { triple: "x86_64-apple-darwin", file: None } }, target: TargetSelection { triple: "x86_64-apple-darwin", file: None }, mode: "pretty", suite: "pretty", path: "src/test/pretty", compare_mode: None } -- 0.390
thread 'main' panicked at 'fs::read_dir(builder.src.join("src/doc/book/redirects")) failed with No such file or directory (os error 2)', src/bootstrap/doc.rs:225:21
failed to run: /Users/runner/work/rust/rust/build/bootstrap/debug/bootstrap --stage 2 test
Build completed unsuccessfully in 0:00:07
== clock drift check ==
  local time: Thu Sep 10 10:13:41 UTC 2020
  local time: Thu Sep 10 10:13:41 UTC 2020
  network time: Thu, 10 Sep 2020 10:13:41 GMT
== end clock drift check ==
##[error]Process completed with exit code 1.
Terminate orphan process: pid (2811) (sccache)
Terminate orphan process: pid (1817) (Python)

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @rust-lang/infra. (Feature Requests)

@bors
Copy link
Contributor

bors commented Sep 10, 2020

☀️ Test successful - checks-actions, checks-azure
Approved by: Mark-Simulacrum
Pushing 25b2f48 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Sep 10, 2020
@bors bors merged commit 25b2f48 into rust-lang:master Sep 10, 2020
@rustbot rustbot added this to the 1.48.0 milestone Sep 10, 2020
@jyn514 jyn514 added the T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) label Sep 12, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants