-
Notifications
You must be signed in to change notification settings - Fork 35
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
[WIP] Initial SIMD support #528
base: main
Are you sure you want to change the base?
Conversation
I am not 100% sold on the approach
while this requires adding |
BTW the comment on the approach is general, and I am not exceedingly attached to it, in general the infra works and we can refine further at another interation |
I have no issue with it because i understand what it's doing and it seems reasonable. But I am notoriously unpicky about these things :) I'd say just merge it, all the code is always up for being refactored. If you're feeling uneasy about something I generally leave a comment or make a follow-up ticket. |
TABLE_FILL(0xFC11, List.of(VARUINT)), | ||
V128_LOAD(0xFD00, List.of(VARUINT, VARUINT)), | ||
I8x16_SWIZZLE(0xFD0E), | ||
V128_CONST(0xFD00 + 13, List.of(VEC_VARUINT)), |
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.
off by one I think:
$ perl -E 'say 0xFD00 + 13; say 0xFD0C'
64781
64780
(some Javy code failed to parse on 0xFD0C which led me to the table)
Starting to get #528 in with reasonable chunks. --------- Co-authored-by: David Phillips <[email protected]>
I wanted to relax a bit, and took this yak shaving task.
I realized that the SIMD support needs a few little tweaks to the public API, and, the initial support, requires quite a bit of wiring rising the bar for possible contributions.
Notes:
wazero
I think it's a good approach for further optimizations!V128_NOT
but demonstrates that the entire wiring works