-
Notifications
You must be signed in to change notification settings - Fork 816
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
Enable wasm32 as a target architecture for the SIMD feature #324
Conversation
Signed-off-by: roee88 <roee88@gmail.com>
Signed-off-by: roee88 <roee88@gmail.com>
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #324 +/- ##
=======================================
Coverage 82.52% 82.52%
=======================================
Files 162 162
Lines 44007 44007
=======================================
Hits 36316 36316
Misses 7691 7691 ☔ View full report in Codecov by Sentry. |
cc @houqp |
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.
This seems like a fine change to me. As @jorgecarleitao probably found, this configuration was added in 73b7576 by @houqp so I think it would be good if he wanted to weigh in
Sure. Though I don't think that the link you shared actually affects it. Originally there was no feature flag for simd and it was always enabled for x86 and x86_64. Then, a feature flag was added on top to allow disabling simd, it was then set to disabled by default, then cfg_aliases was used (no functionality change), and finally aarch64 was added to the list of architectures. So I might be wrong but it all seems to be for historic reasons. However, this applies only as long as it's disabled by default. If at some point it will change to enable by default it would need to be enabled by default only for known supported architectures and disabled by default otherwise. Is that something that's possible to implement easily? |
Yeah, this looks good to me I tested (on a mac, with the most recently updated nightly buid)
and it built 👍 |
Apologize for missing the ping, yes, the cfg_aliases was added with the goal to not introduce any functioning change at the time. I am all for simplifying it to use the native feature flag and let build fail for unsupported architectures :) |
Which issue does this PR close?
Closes #316
Rationale for this change
packed_simd compiles to wasm32-wasi and wasm32-unknown-unknown targets (and includes CI against it). It will only work on WASM runtimes that support the WASM SIMD proposal but that's no reason to block it from arrow-rs side.
What changes are included in this PR?
Same as #303 but without limiting to specific architectures. The rationale is described in #316:
If this turns out to be a problem with the CI then I will revert to just adding
wasm32
to build.rs.Are there any user-facing changes?
No