higan-emu / libco

libco is a cooperative multithreading library written in C89.
Other
125 stars 25 forks source link

RISC V #44

Open ShalokShalom opened 1 year ago

ShalokShalom commented 1 year ago

Hi there

I would be interested to compile bsnes to a RISC V machine.

Do you have any plans to support that platform?

It's an open source architecture, backed by nearly everyone, except ARM :P

Is this a lot of work?

Screwtapello commented 1 year ago

There are no plans to support RISC V at this time, although I wouldn't object to somebody contributing an implementation.

An implementation is not a lot of code (most of them are about a hundred lines), but it does require deep knowledge of the ABI of the platform in question, such as the stack layout, which registers need to be saved and restored, etc. It would also help if there were a way to automatically test the implementation in a GitHub Action, the same way that the current backends are tested (on real hardware where GitHub provides it, inside QEMU on x86_64 otherwise).

invertego commented 8 months ago

Feel free to cherry-pick my implementation from the ares fork of libo: https://github.com/ares-emulator/ares/pull/1249