Add LoongArch 64-bit support#196
Conversation
|
Thanks for your effort! MITestVariables and VSCodeTestVariables should be fixed for 9.0, since runtime still have issue: With this test fixes, all tests passed for me on x64-linux's net9.0 target (.NET SDK 9.0.301) and current netcoredbg upstream. |
xen0n
left a comment
There was a problem hiding this comment.
Looks good overall in terms of LoongArch details, thanks!
Apart from this, there are some changed lines with apparently no change -- I suppose they are line ending changes due to mixed CRLF and LF usage in the original files respectively, and would be better to have them in a separate clean-up commit so the main commit can be focused. What do you think?
Thanks for your advice! After adding Both tests failed on |
Seems to be my editor will remove trailing spaces automatically when save files, I've reverted them in README.md, as rest of them isn't too much, keeping them should be well IMO. |
|
Looks like |
|
I will move this PR into our internal dev repo for internal CI testing. This changes will be in upstream with next public repo update. |
|
Thanks for your contribution, this is part of latest release |
Add LoongArch 64-bit support for netcoredbg, which is a new RISC arch a bit like MIPS or RISC-V, for more informations about LoongArch, please refer Areweloongyet.
dotnet runtime & SDK already have a quite finite LoongArch 64 port, however as a community port, there are no official SDK released, so I use the community one for building & testing, after compiling libdbgshim.so and modify
TargetFrameworkfromnetcoreapp3.1tonet9.0, it can pass most of tests in test-suite.It's worth noticing that due to LoongArch's
ptraceimplement and__debug_trap()is slightly different with other architectures like x64/arm64, like SIGTRAP and SIGILL'ssi_code, so there are some macros for interop breakpoints could work properly.Here are the test results
The failed tests seems to be architecture independent, they're failed too on x64-linux's net9.0 target. It's highly possible that dotnet version differences make them failed.
Related: loongson-community/discussions#84