【发布时间】:2015-09-10 10:11:02
【问题描述】:
我正在使用当前的riscv-tools 为PicoRV32 内核构建固件映像。固件需要浮点,所以我使用-msoft-float。这是我正在使用的编译器/链接器选项:
-Os -m32 -march=RV32I -msoft-float -ffreestanding -nostdlib -lgcc
在此配置中,__muldf3 由(根据链接器-Map 输出)提供:
/opt/riscv/lib/gcc/riscv64-unknown-elf/4.9.2/soft-float/32/libgcc.a(dp-bit.o)
但此代码与 RV32I ISA 不兼容:它使用 MUL 和 MULHU 指令!
我如何获得普通 RV32I ISA 的软浮点?我需要编译我自己的 libgcc.a 版本吗?是否有关于如何执行此操作的说明?
【问题讨论】:
标签: riscv