3 ms·
> It's incredibly complicated for likely no real world reason Can you explain or link to somewhere to read about this? Isn't psABI quite simple?
by camel-cdr 3y ago
> It's incredibly complicated for likely no real world reason
Can you explain or link to somewhere to read about this? Isn't psABI quite simple?
- Laksen 3y agoSure. It's the section here https://github.com/riscv-non-isa/riscv-elf-psabi-doc/blob/master/riscv-cc.adoc#hardware-floating-point-calling-convention https://github.com/riscv-non-isa/riscv-elf-psabi-doc/blob/ma... It's that structs of two simple fields need to be passed in registers. And more specifically that this rule is relevant for mixed integer and floating point fields. It's a very specific rule that requires a ton of code to implement compared to the integer calling convention. And again like the weird AMD64 convention likely invented to squeeze out a theoretical few cycles that never occur outside microbenchmarks