bjorn3 opened PR #9258 from bjorn3:abi_cleanup2
to bytecodealliance:main
:
Unlike x86_64 and some other architectures where large structs are passed at fixed stack offsets, necessitating special Cranelift support, arm64, riscv64 and s390x pass them using regular pointer arguments that can trivially be implemented by frontends.
The current implementation of StructArgument on arm64 and riscv64 uses fixed stack offsets just like on x86_64, which is incorrect as per the ABI documentation. In other words any correct frontend already had to avoid StructArgument on arm64 and riscv64 anyway. For s390x it is correctly implemented but unnecessary and taints even non-s390x specific code.
bjorn3 requested wasmtime-compiler-reviewers for a review on PR #9258.
bjorn3 requested cfallin for a review on PR #9258.
All cg_clif tests pass on arm64.
cfallin submitted PR review:
Looks reasonable to me -- thanks for this simplification!
cfallin has enabled auto merge for PR #9258.
cfallin merged PR #9258.
Last updated: Dec 23 2024 at 12:05 UTC