-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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 vectorized paths for Span<T>.Reverse #64412
Commits on Apr 25, 2022
-
Adding vectorized path for Span<byte>.Reverse that uses SSSE3 and AVX…
…2 where possible
Configuration menu - View commit details
-
Copy full SHA for 904bb85 - Browse repository at this point
Copy the full SHA 904bb85View commit details -
Added vectorized paths for Span<T>.Reverse for primitive types that a…
…re the same size as char, int, or long that use AVX2 or SSSE3 where possible
Configuration menu - View commit details
-
Copy full SHA for 088771f - Browse repository at this point
Copy the full SHA 088771fView commit details -
Apply suggestions from code review
Co-authored-by: Theodore Tsirpanis <teo@tsirpanis.gr>
Configuration menu - View commit details
-
Copy full SHA for fd882e9 - Browse repository at this point
Copy the full SHA fd882e9View commit details -
Added vectorized paths for Span.Reverse to Array.Reverse. Added expli…
…cit inlining and moved generic fallbacks into their own private methods.
Configuration menu - View commit details
-
Copy full SHA for 74deff7 - Browse repository at this point
Copy the full SHA 74deff7View commit details -
Consolidate fall back case into single method, use one wrapper for bo…
…th Span.Reverse and Array.Reverse
Configuration menu - View commit details
-
Copy full SHA for 2899789 - Browse repository at this point
Copy the full SHA 2899789View commit details -
Remove redundant AggressiveInlining, add AggressiveInlining to single…
… wrapper instead
Configuration menu - View commit details
-
Copy full SHA for a6c8101 - Browse repository at this point
Copy the full SHA a6c8101View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3aa7cf1 - Browse repository at this point
Copy the full SHA 3aa7cf1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 86caa86 - Browse repository at this point
Copy the full SHA 86caa86View commit details -
Use Unsafe.Subtract where it is semantically more intuitive, camelCas…
…e for reverseMask variable
Configuration menu - View commit details
-
Copy full SHA for 7c4cd52 - Browse repository at this point
Copy the full SHA 7c4cd52View commit details -
Camel case formatting, add condition check for Array.Reverse to avoid…
… reversing empty or single-element array, better shuffle for int and long Reverse using bit control mask instead of vector control mask
Configuration menu - View commit details
-
Copy full SHA for 3c3f140 - Browse repository at this point
Copy the full SHA 3c3f140View commit details -
Rework loops to use new LoadUnsafe/StoreUnsafe vector APIs. Use Permu…
…te4x64 and PermuteVar8x32 for Int32 and Int64 respectively to reduce total operations.
Configuration menu - View commit details
-
Copy full SHA for 94f45cc - Browse repository at this point
Copy the full SHA 94f45ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 39e906f - Browse repository at this point
Copy the full SHA 39e906fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1ed5bef - Browse repository at this point
Copy the full SHA 1ed5befView commit details -
Configuration menu - View commit details
-
Copy full SHA for 80ae8ab - Browse repository at this point
Copy the full SHA 80ae8abView commit details