Skip to content
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

AdvSimd intrinsic obsoletion #89

Merged
merged 3 commits into from
Jan 6, 2024

Conversation

RealityProgrammer
Copy link
Contributor

As stated in this issue, AdvSimd implementation for pack/unpack/etc... will be obsoleted due to these following reasons:

  • Lack of testing environment: ARM Neon is (as far as I know) majority used for mobile hardwares, which cannot be test.
  • Source error: At the time of writing, AdvSimd is having some issue with incorrect constant range. Consider this following examples:
/// <summary>
/// uint64x2_t vshrq_n_u64 (uint64x2_t a, const int n)
///   A32: VSHR.U64 Qd, Qm, #n
///   A64: USHR Vd.2D, Vn.2D, #n
/// </summary>
public static Vector128<ulong> ShiftRightLogical(Vector128<ulong> value, [ConstantExpected(Min = 1, Max = (byte)(16))] byte count) { throw new PlatformNotSupportedException(); }

has incorrect range, which should be between 1 to 64 according to the official documentation of ARM.

These AdvSimd methods will not be deleted, but instead, they will be commented out, serve as a foundation once we decided to tackle AdvSimd.

@oliverbooth oliverbooth changed the base branch from main to release/4.0.0 November 22, 2023 15:44
@oliverbooth
Copy link
Owner

oliverbooth commented Nov 22, 2023

Switched base to release/4.0.0

@oliverbooth
Copy link
Owner

Ignore failure for .NET job on .NET Core 3.1. netstandard2.0 target is removed in 4.0.0. Also ignore the Unity test runner. As long as it builds on .NET 6+ we are good. However, source validation is failing

@oliverbooth oliverbooth added deprecation Deprecation of unnecessary feature approved This issue has been approved by the developer net6.0 Issue applies to .NET 6. net7.0 Issue applies to .NET 7. area-X10D net8.0 Issue applies to .NET 8. labels Nov 22, 2023
@oliverbooth oliverbooth added this to the 4.0.0 milestone Jan 6, 2024
@oliverbooth oliverbooth merged commit 2a89c8e into oliverbooth:release/4.0.0 Jan 6, 2024
0 of 3 checks passed
oliverbooth added a commit that referenced this pull request Jan 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants