-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Use arm jit for armel in crossgen2, and build the matching bits on all architectures #49734
Conversation
@clamp03 I can't actually test this, as I don't know the docker image for doing an armel crossbuild. Can you provide a docker image that I can use here? |
The idea of the change is that the unix arm jit will be able to compile targetting soft_fp or normal hardware fp abi. And once we get rid of crossgen, we'll simply delete the armel jit we're currently building in favor of the configurable one. |
@davidwrighton Thank you for the update. It fails to build armel with this patch in a restore stage.
This is a Dockerfile that I put all instructions into. (without this patch).
Thank you. |
@clamp03, this looks to be working now although I see errors like the following "bash : error : setlocale: LC_ALL: cannot change locale (en_US.UTF-8) [/dotnet/runtime/src/libraries/Native/build-native.proj]" as it builds, but the failure to run crossgen2 seems to be fixed. |
Please let me know if the fix looks good in your scenario. |
@dotnet/crossgen-contrib |
@davidwrighton Thank you. And could you check two things?
|
Ok, the debug builds are running through. |
@@ -496,6 +496,9 @@ if (CLR_CMAKE_BUILD_SUBSET_ALLJITS AND NOT CLR_CROSS_COMPONENTS_BUILD) | |||
else() | |||
if (CLR_CMAKE_TARGET_UNIX) | |||
create_standalone_jit(TARGET clrjit_unix_${ARCH_TARGET_NAME}_${ARCH_HOST_NAME} OS unix ARCH ${ARCH_TARGET_NAME}) | |||
if (ARCH_TARGET_NAME STREQUAL arm) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Isn't it better to use CLR_CMAKE_TARGET_ARCH_ARM?
if (CLR_CMAKE_TARGET_ARCH_ARM)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It works well in my scenario.
Thank you so much.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Attempt to address use of crossgen2 on armel architectures. Fixes #49347