There's an updated RISC-V compiler (plus assembler, linker, libmach and
other library additions, etc) in contrib/miller/riscv.tar on 9p.io 

The original release was just for the simple rv32i instruction set. It's now
expanded to full rv32gc and rv64gc support, including floating point (single
and double) and compressed instructions. Instruction compression is done
automatically by default in the linker; use the option '-c' if you want to
disable it. (Compressed instructions generally run faster in hardware but
slower in emulation.)

Because of a collision with my original choice of architecture letter, it's
been changed to 'i' for riscv and 'j' for riscv32. This does unfortunately
introduce a new collision: suffix '.i' was used historically for some firmware
files (etherm10g[24]k.i, sd53c8xx.i and uartaxp.i) in the pc kernel. These
will be erroneously identified as object files after the riscv update, so
'mk clean' in /sys/src/9/pc would delete them. The files are actually C
source code referenced in #include statements, so a straightforward solution
is to rename them from '.i' to '.h', and apply patch/pc-rename-i-suffix on 9p.io
which will correct the relevant #include statements.


------------------------------------------
9fans: 9fans
Permalink: 
https://9fans.topicbox.com/groups/9fans/T4943bad991203d32-Md8b063389a49362009cdea13
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

Reply via email to