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 initial riscv64 port #73385

Merged
merged 1 commit into from Aug 4, 2022
Merged

Conversation

am11
Copy link
Member

@am11 am11 commented Aug 4, 2022

These are the initial configuration for riscv64 support. With this delta, the build status of relevant subsets is as follow:

  • mono: build succeeds (debug and release). Debug Logs | Release Logs
  • libs.native: build succeeds
  • host.native: build succeeds (currently only with -p:RuntimeFlavor=mono, since singlefilehost is stuck due to pending clr support)
  • clr: we get to the -- Configuring done point (introspection test, locating dependencies etc. are working). Now we just need to write code starting with PAL. :)

This is done with llvm 15 RC1 on the host, and llvm 14 in rootfs. Currently I am using this tag: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-20.04-cross-riscv64-20220803130642-5291f63 which has clang-9 in base (host) layer, so I installed llvm-15 manually and upstremed the change: dotnet/dotnet-buildtools-prereqs-docker#651.

@dotnet-issue-labeler
Copy link

I couldn't figure out the best area label to add to this PR. If you have write-permissions please help me learn by adding exactly one area label.

@ghost ghost added the community-contribution Indicates that the PR has been added by a community member label Aug 4, 2022
@ghost
Copy link

ghost commented Aug 4, 2022

Tagging subscribers to this area: @dotnet/runtime-infrastructure
See info in area-owners.md if you want to be subscribed.

Issue Details

These are the initial configuration for riscv64 support. With this delta, the build status of relevant subsets is as follow:

  • mono: build succeeds (debug and release). Debug Logs | Release Logs
  • libs.native: build succeeds
  • host.native: build succeeds (currently only with -p:RuntimeFlavor=mono, since singlefilehost is stuck due to pending clr support)
  • clr: we get to the -- Configuring done point (introspection test, locating dependencies etc. are working). Now we just need to write code starting with PAL. :)

This is done with llvm 15 RC1 on the host, and llvm 14 in rootfs. Currently I am using this tag: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-20.04-cross-riscv64-20220803130642-5291f63 which has clang-9 in base (host) layer, so I installed llvm-15 manually and upstremed the change: dotnet/dotnet-buildtools-prereqs-docker#651.

Author: am11
Assignees: -
Labels:

area-Infrastructure, community-contribution

Milestone: -

@am11 am11 requested review from jkotas and vargaz August 4, 2022 15:56
@vargaz
Copy link
Contributor

vargaz commented Aug 4, 2022

The mono changes look ok otherwise.

@am11 am11 force-pushed the feature/build/riscv64-configs branch from ce73a65 to 5ed29ec Compare August 4, 2022 18:26
@am11 am11 marked this pull request as ready for review August 4, 2022 18:26
@@ -87,24 +91,19 @@ endif(CLR_CMAKE_HOST_UNIX)

if(CLR_CMAKE_HOST_WIN32)
if (CLR_CMAKE_TARGET_ARCH_AMD64)
set(TARGET_AMD64 1)
Copy link
Member Author

Choose a reason for hiding this comment

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

These were redundant; set in configurecompiler.cmake

Copy link
Member

@jkotas jkotas 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!

@jkotas jkotas merged commit 5609534 into dotnet:main Aug 4, 2022
@dotnet dotnet locked as resolved and limited conversation to collaborators Sep 4, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-Infrastructure 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.

None yet

4 participants