GNU bug report logs - #46059
[PATCH] Enable riscv-elf targets

Previous Next

Package: guix-patches;

Reported by: Ekaitz Zarraga <ekaitz <at> elenq.tech>

Date: Sat, 23 Jan 2021 22:02:01 UTC

Severity: normal

Tags: patch

Full log


View this message in rfc822 format

From: Ekaitz Zarraga <ekaitz <at> elenq.tech>
To: "46059 <at> debbugs.gnu.org" <46059 <at> debbugs.gnu.org>
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?




This bug report was last modified 4 years and 140 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.