guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#46059] More info about other targets


From: Ekaitz Zarraga
Subject: [bug#46059] More info about other targets
Date: Sun, 24 Jan 2021 17:09:05 +0000

For more information on the dynamic linker names I didn't know:

lp32, ilp32f and ilp32d are the ABI.

i -> integer
l -> long
p -> pointer
f -> float
d -> double

The chars in the beginning indicate what kind of data is sent to 32 bit 
registers.

The suffix says which ones are sent to floating point registers.

So in ilp32 floating point numbers are sent to integer registers, while in 
ilp32d double precision numbers are sent to floating point registers.

Not every ABI is compatible with every single RISC-V configuration. RV32I for 
instance, doesn't support floating point numbers (they are supported in the F 
extension) so it doesn't provide floating point registers meaning that it's not 
able to use any ABI that has a `d` or an `f` as suffix.

But RISC-V configurations with floating point modules can actually run the 
simplest ABI if they want so we probably need to add many entries here :)

Does this make sense?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]