Skip to content

Conversation

@cfallin
Copy link
Member

@cfallin cfallin commented May 7, 2025

Prior versions of regalloc2 could not support more than 255 operands on an instruction, and together with the integrated return-value loads on call instructions introduced in #10502, this caused issues with calls with many returns. This PR upgrades to a version of RA2 that supports up to 2^16 - 1 operands per instruction (well in excess of the maximum of 1000 return/result values per Wasm's implementation limits, for example).

…ytecodealliance#10747)

* Cranelift: update to regalloc2 0.12.2; support many return values.

Prior versions of regalloc2 could not support more than 255 operands on
an instruction, and together with the integrated return-value loads on
call instructions introduced in bytecodealliance#10502, this caused issues with calls
with many returns. This PR upgrades to a version of RA2 that supports up
to `2^16 - 1` operands per instruction (well in excess of the maximum of
1000 return/result values per Wasm's implementation limits, for
example).

Fixes bytecodealliance#10741.

* Update vets

---------

Co-authored-by: Alex Crichton <alex@alexcrichton.com>
@cfallin cfallin requested review from a team as code owners May 7, 2025 21:42
@cfallin cfallin requested review from alexcrichton and dicej and removed request for a team May 7, 2025 21:42
@alexcrichton alexcrichton merged commit e498814 into bytecodealliance:release-33.0.0 May 7, 2025
160 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.

2 participants