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

initial RISC-V support #11593

Merged
merged 7 commits into from Nov 7, 2018
Merged

initial RISC-V support #11593

merged 7 commits into from Nov 7, 2018

Conversation

@lewurm
Copy link
Member

lewurm commented Nov 7, 2018

I rebased @alexrp's work (https://github.com/alexrp/mono/commits/riscv) and added stubs so this minimal example works in the interpreter:

$ qemu-riscv64 ./mono/mini/mono-sgen --version
Mono JIT compiler version 5.21.0 (riscv/f4802305009 Wed Nov  7 02:58:20 PST 2018)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       normal
        Notifications: epoll
        Architecture:  riscv64,double-fp
        Disabled:      none
        Misc:          
        Interpreter:   yes
        Suspend:       preemptive
        GC:            sgen (concurrent by default)
$ export MONO_PATH=../mono-riscv-bclbuild/b/lib/mono/4.5 
$ grep -A 2 test_0_return mono/mini/basic.cs
        public static int test_0_return () {
                return 0;
        }
$ INTERP_FILTER_METHOD=test_0_return qemu-riscv64 ./mono/mini/mono-sgen --interp --regression basic.exe
Test run: image=/home/lewurm/work/mono-riscv/basic.exe
Results: total tests: 1, all pass 
Elapsed time: 0.002441 secs (0.002441, 0.000000)

Overall results: tests: 1, 100% pass
@lewurm lewurm force-pushed the lewurm:riscv branch from d091205 to e9e301c Nov 7, 2018
@luhenry
luhenry approved these changes Nov 7, 2018
Copy link
Member

luhenry left a comment

Amazing! ❤️ Thanks @alexrp and @lewurm!

@directhex

This comment has been minimized.

Copy link
Contributor

directhex commented Nov 7, 2018

@monojenkins build Linux RISC-V

@lewurm

This comment has been minimized.

Copy link
Member Author

lewurm commented Nov 7, 2018

@monojenkins squash

@vargaz
vargaz approved these changes Nov 7, 2018
@akoeplinger

This comment has been minimized.

Copy link
Member

akoeplinger commented Nov 7, 2018

@monojenkins build Linux RISC-V

1 similar comment
@akoeplinger

This comment has been minimized.

Copy link
Member

akoeplinger commented Nov 7, 2018

@monojenkins build Linux RISC-V

@monojenkins monojenkins merged commit e8aa7a2 into mono:master Nov 7, 2018
32 of 34 checks passed
32 of 34 checks passed
Linux RISC-V Build finished. No test results found.
Details
Linux RISC-V (emulated) Build finished. No test results found.
Details
API Diff No public API changes found.
Details
Linux AArch64 Build finished. 198621 tests run, 1291 skipped, 0 failed.
Details
Linux AArch64 Coop Suspend Build finished. 198612 tests run, 1291 skipped, 0 failed.
Details
Linux AArch64 FullAOT Build finished. 21916 tests run, 550 skipped, 0 failed.
Details
Linux AArch64 FullAOT+LLVM Build finished. 21916 tests run, 550 skipped, 0 failed.
Details
Linux AArch64 Interpreter Build finished. 19361 tests run, 231 skipped, 0 failed.
Details
Linux ARMv5 Build finished. 198489 tests run, 1289 skipped, 0 failed.
Details
Linux ARMv7 Build finished. 198489 tests run, 1289 skipped, 0 failed.
Details
Linux ARMv7 Interpreter Build finished. 19316 tests run, 229 skipped, 0 failed.
Details
Linux WebAssembly Build finished. No test results found.
Details
Linux WebAssembly C++ Build finished. No test results found.
Details
Linux i386 Build finished. 198623 tests run, 1286 skipped, 0 failed.
Details
Linux x64 Build finished. 198625 tests run, 1287 skipped, 0 failed.
Details
Linux x64 Acceptance Tests Build finished. 6678 tests run, 2 skipped, 0 failed.
Details
Linux x64 C++ Build finished. 198625 tests run, 1286 skipped, 0 failed.
Details
Linux x64 Checked Private Types Build Build finished.
Details
Linux x64 Coop Suspend Build finished. 198616 tests run, 1288 skipped, 0 failed.
Details
Linux x64 FullAOT Build finished. 21920 tests run, 550 skipped, 0 failed.
Details
Linux x64 FullAOT+LLVM Build finished. 21919 tests run, 550 skipped, 0 failed.
Details
Linux x64 Interpreter Build finished. 182655 tests run, 1164 skipped, 0 failed.
Details
Linux x64 mcs Build finished.
Details
OS X i386 Build finished. 197776 tests run, 1178 skipped, 0 failed.
Details
OS X x64 Build finished. 197778 tests run, 1180 skipped, 0 failed.
Details
OS X x64 Android SDK Build finished. No test results found.
Details
OS X x64 C++ Build finished. 197778 tests run, 1180 skipped, 0 failed.
Details
OS X x64 iOS SDK Build finished. No test results found.
Details
PR Trigger Docs Click to view available PR triggers (Xamarin internal).
Details
Project Files Diff No csproj file changes found.
Details
Windows i386 Build finished. 197879 tests run, 1138 skipped, 0 failed.
Details
Windows x64 Build finished. 197903 tests run, 1140 skipped, 0 failed.
Details
Windows x64 C++ Build finished. 197905 tests run, 1140 skipped, 0 failed.
Details
license/cla All CLA requirements met.
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.