bytecodealliance / bytecodealliance/wasmtime

Riscv float abi variant handling

Open
#4,994 9 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
18.6k
Forks
1.8k
Avg merge
1d 18h
Merged PRs (30d)
126

Description

Riscv has different abi variants which pass floating point arguments differently. This is controlled independently of the used target features and the linker checks that object files with different abi variants are not linked together. Currently Cranelift doesn't handle this at all and effectively uses the double float abi unconditionally. We will need a way to specify the float abi (soft, single, double), use this float abi even if the target features would allow the double float abi and expose a way for cranelift-object to get the chosen float abi to put in the `e_flags` field of an elf binary.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.