Skip to content

Conversation

@tgross35
Copy link
Contributor

@tgross35 tgross35 commented Feb 20, 2025

Removes an ABI hack that used <2 x i64> to return i128 in xmm0 on Windows 1.

Link: #116558
Link: rust-lang/compiler-builtins#758

try-job: x86_64-mingw-1
try-job: x86_64-mingw-2

r? @ghost

@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. labels Feb 20, 2025
@rustbot
Copy link
Collaborator

rustbot commented Feb 20, 2025

These commits modify the library/Cargo.lock file. Unintentional changes to library/Cargo.lock can be introduced when switching branches and rebasing PRs.

If this was unintentional then you should revert the changes before this PR is merged.
Otherwise, you can ignore this comment.

Some changes occurred in compiler/rustc_codegen_cranelift

cc @bjorn3

@rustbot rustbot added the T-libs Relevant to the library team, which will review and decide on the PR/issue. label Feb 20, 2025
@tgross35
Copy link
Contributor Author

@bors try

@bors
Copy link
Collaborator

bors commented Feb 20, 2025

⌛ Trying commit e80f1a4 with merge bf4aacc...

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Feb 20, 2025

💔 Test failed - checks-actions

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 20, 2025
@tgross35
Copy link
Contributor Author

Hm. Looking at both the asm and llvm ir for the symbols previously marked with win64_128bit_abi_hack, the only difference I see is <16 x i8> vs <2 x i64> for the return type.

@tgross35
Copy link
Contributor Author

Unsure what could be causing this. Trying again with only the mingw jobs to see if those also fail.

@bors try

@bors
Copy link
Collaborator

bors commented Feb 20, 2025

⌛ Trying commit e80f1a4 with merge 9c5e57d...

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Feb 20, 2025

💔 Test failed - checks-actions

@tgross35
Copy link
Contributor Author

Maybe stage0 hasn't gotten bumped to something that would include #134290 yet?

@tgross35
Copy link
Contributor Author

tgross35 commented Feb 20, 2025

Indeed #137237

@rustbot blocked

@rustbot rustbot added S-blocked Status: Blocked on something else such as an RFC or other implementation work. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Feb 20, 2025
@RalfJung
Copy link
Member

Hm. Looking at both the asm and llvm ir for the symbols previously marked with win64_128bit_abi_hack, the only difference I see is <16 x i8> vs <2 x i64> for the return type.

That's expected; when we set a PassMode to pass things in Vector registers, we always generate i8 vectors. We rely on this making no difference for LLVM.

@RalfJung
Copy link
Member

Oh, I misunderstood. Yeah this needs #134290 in the bootstrap compiler, you are right. :)

@bors
Copy link
Collaborator

bors commented Feb 23, 2025

☔ The latest upstream changes (presumably #137446) made this pull request unmergeable. Please resolve the merge conflicts.

Removes an ABI hack that used `<2 x i64>` to return `i128` in `xmm0` on
Windows [1].

[1]: rust-lang/compiler-builtins#759
Link: rust-lang#116558
Link: rust-lang/compiler-builtins#758
@tgross35 tgross35 reopened this Feb 23, 2025
@tgross35 tgross35 closed this Feb 23, 2025
@tgross35 tgross35 reopened this Feb 23, 2025
@RalfJung
Copy link
Member

The bootstrap bump landed, so I guess this should work now? AFAIK try merges with latest master so let's see

@bors try

@bors
Copy link
Collaborator

bors commented Feb 23, 2025

⌛ Trying commit 08f1086 with merge 3c8cffe...

@bors
Copy link
Collaborator

bors commented Feb 23, 2025

☀️ Try build successful - checks-actions
Build commit: 3c8cffe (3c8cffe849b99a650f1ce7f7dd43e87d88321dbe)

@tgross35
Copy link
Contributor Author

Woo!

@bors r+

@bors
Copy link
Collaborator

bors commented Feb 23, 2025

📌 Commit 08f1086 has been approved by tgross35

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-blocked Status: Blocked on something else such as an RFC or other implementation work. labels Feb 23, 2025
@bors bors merged commit fb54acd into rust-lang:master Feb 24, 2025
8 of 16 checks passed
@rustbot rustbot added this to the 1.87.0 milestone Feb 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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.

5 participants