We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
From rust-lang/rust#127318:
; RUN: llc -mtriple=wasm32-unknown-unknown -target-abi=experimental-mv define i64 @test() { entry: %pair = call { i64, i64 } @foo() %v0 = extractvalue { i64, i64 } %pair, 0 %1 = icmp eq i64 %v0, 0 %v1 = extractvalue { i64, i64 } %pair, 1 %_0.sroa.0.0 = select i1 %1, i64 42, i64 %v1 ret i64 %_0.sroa.0.0 } declare { i64, i64 } @foo()
Results in:
i64.const 42 local.get 0 call foo local.set 0 i64.eqz i64.select
Note the get-before-set of local 0.
The text was updated successfully, but these errors were encountered:
@llvm/issue-subscribers-backend-webassembly
Author: Nikita Popov (nikic)
; RUN: llc -mtriple=wasm32-unknown-unknown -target-abi=experimental-mv define i64 @<!-- -->test() { entry: %pair = call { i64, i64 } @<!-- -->foo() %v0 = extractvalue { i64, i64 } %pair, 0 %1 = icmp eq i64 %v0, 0 %v1 = extractvalue { i64, i64 } %pair, 1 %_0.sroa.0.0 = select i1 %1, i64 42, i64 %v1 ret i64 %_0.sroa.0.0 } declare { i64, i64 } @<!-- -->foo()
Sorry, something went wrong.
Is there any update on this issue? This bug is kind of severe, as any feature that use multivalue ABI like u128 leads to maximum call stack error.
u128
This affect many features including:
std::time::Duration
chrono
Can you work around the issue by not using multivalue for now?
No branches or pull requests
From rust-lang/rust#127318:
Results in:
Note the get-before-set of local 0.
The text was updated successfully, but these errors were encountered: