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

[Mono][RISC-V] emit mul inst instead of emulated mul #85445

Merged
merged 23 commits into from
Jul 8, 2023

Conversation

Xinlong-Wu
Copy link
Contributor

  • emit mul inst instead of emulated mul
  • try handle exceptions
  • emit inst idiv
  • process ArgOnStack arg at prologue
  • fix logic emit_imm

@ghost ghost added the community-contribution Indicates that the PR has been added by a community member label Apr 27, 2023
@Xinlong-Wu
Copy link
Contributor Author

btw, what should I do if I want to set up a CI for RISC-V Arch?

@am11 am11 added the arch-riscv Related to the RISC-V architecture label Apr 27, 2023
@am11
Copy link
Member

am11 commented Apr 27, 2023

btw, what should I do if I want to set up a CI for RISC-V Arch?

Wait for #85443 😉

@am11
Copy link
Member

am11 commented Apr 27, 2023

@Xinlong-Wu, with this PR, helloworld app works using dotnet (tested #84470 (comment)). 👍

I then tested this sample: https://github.com/dotnet/samples/tree/7b5da1b14bb3efc24d97e104ddbe5d3bb88f8cbc/csharp/getting-started/console-webapiclient, it throws from lowering:

$ /artifacts/bin/testhost/net8.0-linux-Debug-riscv64/dotnet bin/Release/net8.0/console-webapiclient.dll

unable to lowering following IR: long_mul_imm R45 <- R42
* Assertion: should not be reached at /runtime/src/mono/mono/mini/mini-riscv.c:2709

(aside: maybe reword unable to lowering following IR message as unable to lower the following IR)

@Xinlong-Wu
Copy link
Contributor Author

@Xinlong-Wu, with this PR, helloworld app works using dotnet (tested #84470 (comment)). 👍

I then tested this sample: https://github.com/dotnet/samples/tree/7b5da1b14bb3efc24d97e104ddbe5d3bb88f8cbc/csharp/getting-started/console-webapiclient, it throws from lowering:

$ /artifacts/bin/testhost/net8.0-linux-Debug-riscv64/dotnet bin/Release/net8.0/console-webapiclient.dll

unable to lowering following IR: long_mul_imm R45 <- R42
* Assertion: should not be reached at /runtime/src/mono/mono/mini/mini-riscv.c:2709

(aside: maybe reword unable to lowering following IR message as unable to lower the following IR)

yeah, cuz the port of Mono was not been completed. I think the IR long_mul_imm will be lowered in next pr

@Xinlong-Wu
Copy link
Contributor Author

ping, can this pr been merged?

@vargaz vargaz merged commit 045b526 into dotnet:main Jul 8, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Aug 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-riscv Related to the RISC-V architecture area-VM-meta-mono community-contribution Indicates that the PR has been added by a community member
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants