Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add riscv32i target #30

Merged
merged 1 commit into from
Jul 27, 2019
Merged

add riscv32i target #30

merged 1 commit into from
Jul 27, 2019

Conversation

sbourdeauducq
Copy link
Contributor

This adds support for the simplest RISC-V processor possible, which is useful e.g. for experimenting with FPGA softcore implementations.

@Disasm
Copy link
Member

Disasm commented Jun 8, 2019

Hmm. I do not see riscv32i-unknown-none-elf target in Rust. How are you going to use this?

@sbourdeauducq
Copy link
Contributor Author

@Disasm
Copy link
Member

Disasm commented Jun 8, 2019

Could you upstream this first? It should be an easy task.

@Disasm
Copy link
Member

Disasm commented Jun 8, 2019

Also double-check that you are targeting softcores with Privileged Architecture Version 1.10 support. These crates (riscv and riscv-rt) are pretty useless for cores without it (e.g. picorv32).

@Disasm
Copy link
Member

Disasm commented Jul 25, 2019

I added riscv32i-unknown-none-elf to Rust, so I can merge this in a day if you still need it. However, this PR needs to be rebased first.

@sbourdeauducq
Copy link
Contributor Author

Thanks!
Will rebase in a moment.

@sbourdeauducq
Copy link
Contributor Author

Couldn't test since rust-embedded/riscv-rt#31 broke rust-embedded/riscv-rt#34

@Disasm
Copy link
Member

Disasm commented Jul 25, 2019

Yes, we need to figure out what to do with that mul instruction on riscv32i

@laanwj
Copy link
Contributor

laanwj commented Jul 27, 2019

Yes, we need to figure out what to do with that mul instruction on riscv32i

As it'd be only a small iteration up to # of harts, won't lose much by replacing it with a loop, maybe conditionally on non-M.

@Disasm
Copy link
Member

Disasm commented Jul 27, 2019

As it'd be only a small iteration up to # of harts, won't lose much by replacing it with a loop, maybe conditionally on non-M.

Sure, the change is not difficult, but it needs to be done for corresponding riscv-rt PR.

Copy link
Member

@Disasm Disasm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@Disasm
Copy link
Member

Disasm commented Jul 27, 2019

bors r+

bors bot added a commit that referenced this pull request Jul 27, 2019
30: add riscv32i target r=Disasm a=sbourdeauducq

This adds support for the simplest RISC-V processor possible, which is useful e.g. for experimenting with  FPGA softcore implementations.

Co-authored-by: Sebastien Bourdeauducq <sb@m-labs.hk>
@bors
Copy link
Contributor

bors bot commented Jul 27, 2019

Build succeeded

@bors bors bot merged commit b53e0a5 into rust-embedded:master Jul 27, 2019
romancardenas pushed a commit that referenced this pull request Nov 17, 2023
30: Fix docs, add MSRV policy, bump version r=dvc94ch a=Disasm



Co-authored-by: Vadim Kaushan <admin@disasm.info>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants