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

Distribute rustc_codegen_cranelift for Windows #128939

Merged
merged 1 commit into from
Sep 9, 2024

Conversation

bjorn3
Copy link
Member

@bjorn3 bjorn3 commented Aug 10, 2024

With support for raw-dylib recently added to cg_clif, and inline assembly support working on Windows for quite a while now, all blockers for distributing cg_clif on Windows that I mentioned in #81746 (comment) are fixed now.

@rustbot
Copy link
Collaborator

rustbot commented Aug 10, 2024

r? @albertlarsan68

rustbot has assigned @albertlarsan68.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. labels Aug 10, 2024
@bjorn3
Copy link
Member Author

bjorn3 commented Aug 10, 2024

@bors try

bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 10, 2024
…<try>

[WIP] Distribute rustc_codegen_cranelift for Windows

try-job: dist-x86_64-msvc
try-job: dist-i686-msvc
try-job: dist-i686-mingw
try-job: dist-x86_64-mingw
@bors
Copy link
Contributor

bors commented Aug 10, 2024

⌛ Trying commit 8a8896d with merge d3b4306...

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Contributor

bors commented Aug 10, 2024

☀️ Try build successful - checks-actions
Build commit: d3b4306 (d3b4306976392198298d7ef958db7a4c9b0610c5)

@bjorn3 bjorn3 force-pushed the windows_cg_clif_component branch from 8a8896d to 2dbc976 Compare August 10, 2024 21:17
@bjorn3
Copy link
Member Author

bjorn3 commented Aug 10, 2024

If someone on Windows could check if the above try build produced a toolchain with working cg_clif, that would be appreciated.

@lqd
Copy link
Member

lqd commented Aug 10, 2024

A reboot later.

I was expecting to install it like the following:

> rustup-toolchain-install-master d3b4306976392198298d7ef958db7a4c9b0610c5 --component rustc-codegen-cranelift-preview
error: missing component `rustc-codegen-cranelift-preview` on toolchain `d3b4306976392198298d7ef958db7a4c9b0610c5` on channel `nightly` for target `x86_64-pc-windows-msvc`

With luck I tried with the component named as rustc-codegen-cranelift though, and the toolchain installed successfully!

This is how a helloworld looks:

$ cargo clean -q && CARGO_PROFILE_DEV_CODEGEN_BACKEND=cranelift cargo +d3b4306976392198298d7ef958db7a4c9b0610c5 run -Zcodegen-backend -q
Hello, world!

I'm not sure if there's a way to ensure cg_clif was used, but I'd assume so.

@bjorn3
Copy link
Member Author

bjorn3 commented Aug 11, 2024

Thanks for checking!

@bjorn3 bjorn3 changed the title [WIP] Distribute rustc_codegen_cranelift for Windows Distribute rustc_codegen_cranelift for Windows Aug 11, 2024
@bjorn3 bjorn3 marked this pull request as ready for review August 11, 2024 08:27
@bjorn3 bjorn3 added A-cranelift Things relevant to the [future] cranelift backend and removed A-testsuite Area: The testsuite used to check the correctness of rustc labels Aug 11, 2024
@albertlarsan68
Copy link
Member

(sorry for the slow review, I needed time off)

Thanks for the PR!
@bors r+

@bors
Copy link
Contributor

bors commented Sep 4, 2024

📌 Commit 2dbc976 has been approved by albertlarsan68

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 4, 2024
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Sep 6, 2024
…r=albertlarsan68

Distribute rustc_codegen_cranelift for Windows

With support for raw-dylib recently added to cg_clif, and inline assembly support working on Windows for quite a while now, all blockers for distributing cg_clif on Windows that I mentioned in rust-lang#81746 (comment) are fixed now.
bors added a commit to rust-lang-ci/rust that referenced this pull request Sep 6, 2024
…llaumeGomez

Rollup of 7 pull requests

Successful merges:

 - rust-lang#119229 (Update mingw-w64 + GNU toolchain)
 - rust-lang#128871 (bypass linker configuration and cross target check for specific commands)
 - rust-lang#128939 (Distribute rustc_codegen_cranelift for Windows)
 - rust-lang#129529 (Add test to build crates used by r-a on stable)
 - rust-lang#129624 (Adjust `memchr` pinning and run `cargo update`)
 - rust-lang#129835 (enable const-float-classify test, and test_next_up/down on 32bit x86)
 - rust-lang#130009 (rustdoc-search: allow trailing `Foo ->` arg search)

r? `@ghost`
`@rustbot` modify labels: rollup
@GuillaumeGomez
Copy link
Member

I wonder if this the one which failed in #130027...

@lqd
Copy link
Member

lqd commented Sep 6, 2024

Doesn't look like it, windows CI's just on fire at the moment, but you can rollup=never if that'd make you feel better :)

@GuillaumeGomez
Copy link
Member

I was just blindly guessing because no PR seemed to fit the failure and someone commented on the rollup that it's a known flaky bug. So all good here.

workingjubilee added a commit to workingjubilee/rustc that referenced this pull request Sep 9, 2024
…r=albertlarsan68

Distribute rustc_codegen_cranelift for Windows

With support for raw-dylib recently added to cg_clif, and inline assembly support working on Windows for quite a while now, all blockers for distributing cg_clif on Windows that I mentioned in rust-lang#81746 (comment) are fixed now.
workingjubilee added a commit to workingjubilee/rustc that referenced this pull request Sep 9, 2024
…r=albertlarsan68

Distribute rustc_codegen_cranelift for Windows

With support for raw-dylib recently added to cg_clif, and inline assembly support working on Windows for quite a while now, all blockers for distributing cg_clif on Windows that I mentioned in rust-lang#81746 (comment) are fixed now.
bors added a commit to rust-lang-ci/rust that referenced this pull request Sep 9, 2024
…kingjubilee

Rollup of 16 pull requests

Successful merges:

 - rust-lang#119229 (Update mingw-w64 + GNU toolchain)
 - rust-lang#128345 (added support for GNU/Hurd on x86_64)
 - rust-lang#128667 (rustdoc: normalise type/field names)
 - rust-lang#128939 (Distribute rustc_codegen_cranelift for Windows)
 - rust-lang#129529 (Add test to build crates used by r-a on stable)
 - rust-lang#129624 (Adjust `memchr` pinning and run `cargo update`)
 - rust-lang#129876 (Use sysroot crates maximally in `rustc_codegen_gcc`.)
 - rust-lang#130034 ( Fix enabling wasm-component-ld to match other tools )
 - rust-lang#130048 (run-make-support: Add llvm-pdbutil)
 - rust-lang#130068 (Test codegen when setting deployment target)
 - rust-lang#130070 (Rename variant `AddrOfRegion` of `RegionVariableOrigin` to `BorrowRegion`)
 - rust-lang#130087 (remove 'const' from 'Option::iter')
 - rust-lang#130090 (make Result::copied unstably const)
 - rust-lang#130092 (Fixes typo in wasm32-wasip2 doc comment)
 - rust-lang#130107 (const: make ptr.is_null() stop execution on ambiguity)
 - rust-lang#130115 (Remove needless returns detected by clippy in libraries)

r? `@ghost`
`@rustbot` modify labels: rollup
@workingjubilee
Copy link
Member

It's not about you, it's about Windows.

@bors rollup=iffy

bors added a commit to rust-lang-ci/rust that referenced this pull request Sep 9, 2024
…albertlarsan68

Distribute rustc_codegen_cranelift for Windows

With support for raw-dylib recently added to cg_clif, and inline assembly support working on Windows for quite a while now, all blockers for distributing cg_clif on Windows that I mentioned in rust-lang#81746 (comment) are fixed now.
@bors
Copy link
Contributor

bors commented Sep 9, 2024

⌛ Testing commit 2dbc976 with merge 3d9d39f...

@rust-log-analyzer
Copy link
Collaborator

The job x86_64-msvc-ext2 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
[RUSTC-TIMING] miri test:false 4.409
error: failed to remove file `C:\a\rust\rust\build\x86_64-pc-windows-msvc\stage1-tools\x86_64-pc-windows-msvc\release\miri.exe`

Caused by:
  Access is denied. (os error 5)
Command has failed. Rerun with -v to see more details.
  local time: Mon, Sep  9, 2024  3:14:55 PM
  network time: Mon, 09 Sep 2024 15:14:55 GMT
##[error]Process completed with exit code 1.
Post job cleanup.

@bors
Copy link
Contributor

bors commented Sep 9, 2024

💔 Test failed - checks-actions

@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 Sep 9, 2024
@ChrisDenton
Copy link
Member

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

bors commented Sep 9, 2024

⌛ Testing commit 2dbc976 with merge d7522d8...

@bors
Copy link
Contributor

bors commented Sep 9, 2024

☀️ Test successful - checks-actions
Approved by: albertlarsan68
Pushing d7522d8 to master...

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

Finished benchmarking commit (d7522d8): 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
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.5% [-0.5%, -0.5%] 1
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -2.1%, secondary 2.8%)

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)
2.8% [2.6%, 3.0%] 2
Improvements ✅
(primary)
-2.1% [-2.1%, -2.1%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -2.1% [-2.1%, -2.1%] 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: 757.15s -> 756.6s (-0.07%)
Artifact size: 341.19 MiB -> 341.19 MiB (-0.00%)

@bjorn3 bjorn3 deleted the windows_cg_clif_component branch September 10, 2024 15:42
bjorn3 pushed a commit to bjorn3/rust that referenced this pull request Sep 22, 2024
…albertlarsan68

Distribute rustc_codegen_cranelift for Windows

With support for raw-dylib recently added to cg_clif, and inline assembly support working on Windows for quite a while now, all blockers for distributing cg_clif on Windows that I mentioned in rust-lang#81746 (comment) are fixed now.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-cranelift Things relevant to the [future] cranelift backend 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) T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants