-
Notifications
You must be signed in to change notification settings - Fork 455
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 support for Windows ARM64 #2089
base: main
Are you sure you want to change the base?
Add support for Windows ARM64 #2089
Conversation
Signed-off-by: Anthony Roberts <[email protected]>
Love it, thanks for the work! Hopefully the CLA & failing tests can be resolved. |
@@ -16,7 +16,7 @@ include(FetchContent) | |||
set(FETCHCONTENT_BASE_DIR "${CMAKE_BINARY_DIR}/ext/build/sse2neon") | |||
FetchContent_Declare(sse2neon | |||
GIT_REPOSITORY https://github.com/DLTcollab/sse2neon.git | |||
GIT_TAG v1.6.0 | |||
GIT_TAG 227cc413fb2d50b2a10073087be96b59d5364aea |
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.
Any reason you couldn't pick an official version number here?
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.
Long story short, we uncovered some issues with 1.7.0 in Blender on various platforms, and needed to update to a non-versioned commit, as they only version sse2neon once a year - the issues may or may not affect OCIO, but this is at least a known working and tested version that Blender uses.
I'll have a dig into those tests and try and figure it out - I don't have those platforms to hand, so will be some guesswork involved. For the CLA, I'm trying to find out who our internal person is that is responsible for EasyCLA so thay can approve it under our corporate account - I'll find out at some point soon I'm sure |
Signed-off-by: Anthony Roberts <[email protected]>
56ef88d
to
79c0fc8
Compare
Signed-off-by: Anthony Roberts <[email protected]>
Have fixed a small buildfile issue - I am hoping this may resolve the mac issues (sse2neon accidentally got disabled in some configurations). I have also fixed some additional issues I encountered while debugging (namely it wasn't actually using sse2neon properly outside of the cmake test, oops). I have been building with python off, there seems to be some sort of Access Violation Exception, but I'm not sure what it is caused by - for now, the rest of the test suite passes so it should be fine. |
CLA now done! |
Have you tried (cross-)compiling
If not, I get PR looks good otherwise though! |
This adds proper support for building for Windows ARM64 devices. using MSVC.
It does actually work right now, but only by complete accident, and with no SIMD enabled - this enables everything properly.
As part of this, I updated the version of sse2neon used to one compatible with MSVC - the particular hash I used is the exact one that Blender uses, which is known working (there were some issues with the base 1.7.0 release).
Commands used:
All tests pass. This is using VS2022, I wouldn't really use VS2019 for ARM64 platforms if I'm honest.
I didn't test any of the GPU things, although GLUT may work, as I added ARM64 support to FreeGLUT a few years ago.
Addresses #1859 (so probably of interest to @num3ric also)