Skip to content

s390x: fix some fixmes - #2230

Merged
adamgemmell merged 2 commits into
rust-lang:mainfrom
folkertdev:s390x-llvm-fixmes
Sep 21, 2026
Merged

adamgemmell merged 2 commits into
rust-lang:mainfrom
folkertdev:s390x-llvm-fixmes

Conversation

@folkertdev

Copy link
Copy Markdown
Contributor

These patterns got some very specific fixes, and so I believe we can rely on them optimizing correctly

cc @uweigand

There is still a fixme here

#[cfg_attr(test, assert_instr(vacq))]
pub unsafe fn vec_adde_u128(
    a: vector_unsigned_char,
    b: vector_unsigned_char,
    c: vector_unsigned_char,
) -> vector_unsigned_char {
    let a: u128 = transmute(a);
    let b: u128 = transmute(b);
    let c: u128 = transmute(c);
    // FIXME(llvm) https://github.com/llvm/llvm-project/pull/153557
    //     let (d, _carry) = a.carrying_add(b, c & 1 != 0);
    //     transmute(d)
    transmute(vacq(a, b, c))
}

where the right instruction is not emitted when using carrying_add, probably a missing pattern.

@rustbot

rustbot commented Sep 20, 2026

Copy link
Copy Markdown
Collaborator

r? @adamgemmell

rustbot has assigned @adamgemmell.
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

Why was this reviewer chosen?

The reviewer was selected based on:

  • Owners of files modified in this PR: @Amanieu, @adamgemmell, @davidtwco, @folkertdev, @sayantn
  • @Amanieu, @adamgemmell, @davidtwco, @folkertdev, @sayantn expanded to Amanieu, adamgemmell, davidtwco, folkertdev, sayantn
  • Random selection from Amanieu, adamgemmell, davidtwco, sayantn

@adamgemmell
adamgemmell added this pull request to the merge queue Sep 21, 2026
Merged via the queue into rust-lang:main with commit c1c3ea6 Sep 21, 2026
87 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants