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

LLVM: LLVM-20.0 removes MMX types #128194

Merged
merged 1 commit into from
Jul 26, 2024
Merged

LLVM: LLVM-20.0 removes MMX types #128194

merged 1 commit into from
Jul 26, 2024

Conversation

maurer
Copy link
Contributor

@maurer maurer commented Jul 25, 2024

See llvm/llvm-project#98505

@rustbot label: +llvm-main

@rustbot
Copy link
Collaborator

rustbot commented Jul 25, 2024

r? @cuviper

rustbot has assigned @cuviper.
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 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. llvm-main Marks PRs that are making Rust work with LLVM main (this label is consumed by CI tooling) labels Jul 25, 2024
@cuviper
Copy link
Member

cuviper commented Jul 25, 2024

Can we just remove it entirely, unconditionally? I don't see any use of the Rust TypeKind::X86_MMX, and it seems better to remove the temptation since this will soon be unavailable anyway.

@maurer
Copy link
Contributor Author

maurer commented Jul 25, 2024

I've removed it entirely. The risk with this is that if LLVM does generate an x86_mmx type ID somewhere, we'll error out if we ask what kind it is. The specific risk I'm thinking of looks like:

fn foo<'ll>(cx: &CodegenCx<'ll>, ty: &'ll type) {
  match cx.type_kind(ty) {
    TypeKind::Array => do_array_thing();
    _ => do_default_thing();
  }
}

This would error out on the generation of the type_kind for mmx, even if the default case was going to cover things in every occurrence of mmx, as the generation of the kind would produce an error "Rust does not support the TypeId: blah"

We can see what test suites think about it though.

@cuviper
Copy link
Member

cuviper commented Jul 25, 2024

This would error out on the generation of the type_kind for mmx, even if the default case was going to cover things in every occurrence of mmx, as the generation of the kind would produce an error "Rust does not support the TypeId: blah"

Ack. It passed PR CI, at least, and we're still early in the release cycle -- if something comes up outside of CI, we can always revert to your initial narrower change.

@bors r+ rollup

@bors
Copy link
Contributor

bors commented Jul 25, 2024

📌 Commit 38931cd 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 Jul 25, 2024
bors added a commit to rust-lang-ci/rust that referenced this pull request Jul 26, 2024
…iaskrgr

Rollup of 7 pull requests

Successful merges:

 - rust-lang#126090 (Fix supertrait associated type unsoundness)
 - rust-lang#127220 (Graciously handle `Drop` impls introducing more generic parameters than the ADT)
 - rust-lang#127950 (Use `#[rustfmt::skip]` on some `use` groups to prevent reordering.)
 - rust-lang#128085 (Various notes on match lowering)
 - rust-lang#128150 (Stop using `unsized_const_parameters` in core/std)
 - rust-lang#128194 (LLVM: LLVM-20.0 removes MMX types)
 - rust-lang#128211 (fix: compilation issue w/ refactored type)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit d03c56f into rust-lang:master Jul 26, 2024
6 checks passed
@rustbot rustbot added this to the 1.82.0 milestone Jul 26, 2024
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Jul 26, 2024
Rollup merge of rust-lang#128194 - maurer:fix-mmx, r=cuviper

LLVM: LLVM-20.0 removes MMX types

See llvm/llvm-project#98505

`@rustbot` label: +llvm-main
@maurer maurer deleted the fix-mmx branch July 27, 2024 05:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
llvm-main Marks PRs that are making Rust work with LLVM main (this label is consumed by CI tooling) 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
Development

Successfully merging this pull request may close these issues.

4 participants