diff --git a/src/libraries/System.Private.CoreLib/src/System/Runtime/Intrinsics/LoongArch/Lasx.PlatformNotSupported.cs b/src/libraries/System.Private.CoreLib/src/System/Runtime/Intrinsics/LoongArch/Lasx.PlatformNotSupported.cs
new file mode 100644
index 00000000000000..c0a10d7aa1ae1f
--- /dev/null
+++ b/src/libraries/System.Private.CoreLib/src/System/Runtime/Intrinsics/LoongArch/Lasx.PlatformNotSupported.cs
@@ -0,0 +1,5731 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+
+using System.Runtime.CompilerServices;
+
+namespace System.Runtime.Intrinsics.LoongArch
+{
+ ///
+ /// This class provides access to the LASX-256bits hardware instructions via intrinsics
+ ///
+ [CLSCompliant(false)]
+#if SYSTEM_PRIVATE_CORELIB
+ public
+#else
+ internal
+#endif
+ abstract class Lasx : Lsx
+ {
+ internal Lasx() { }
+
+ public static new bool IsSupported { [Intrinsic] get { return false; } }
+
+ ///
+ /// int8x32_t xvadd_b(int8x32_t a, int8x32_t b)
+ /// LASX: XVADD.B Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint8x32_t xvadd_b(uint8x32_t a, uint8x32_t b)
+ /// LASX: XVADD.B Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvadd_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVADD.H Xd.16H, Xj.16H, Xk.16H
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint16x16_t xvadd_h(uint16x16_t a, uint16x16_t b)
+ /// LASX: XVADD.H Xd.16H, Xj.16H, Xk.16H
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvadd_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVADD.W Xd.8W, Xj.8W, Xk.8W
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint32x8_t xvadd_w(uint32x8_t a, uint32x8_t b)
+ /// LASX: XVADD.W Xd.8W, Xj.8W, Xk.8W
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvadd_d(int64x4_t a, int64x4_t b)
+ /// LASX: XVADD.D Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint64x4_t xvadd_d(uint64x4_t a, uint64x4_t b)
+ /// LASX: XVADD.D Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// float32x8_t xvfadd_s(float32x8_t a, float32x8_t b)
+ /// LASX: XVFADD.S Xd.8S, Xj.8S, Xk.8S
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// float64x4_t xvfadd_d(float64x4_t a, float64x4_t b)
+ /// LASX: XVFADD.D Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 Add(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int8x32_t xvsadd_b(int8x32_t a, int8x32_t b)
+ /// LASX: XVSADD.B Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvsadd_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVSADD.H Xd.16H, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvsadd_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVSADD.W Xd.8W, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvsadd_d(int64x4_t a, int64x4_t b)
+ /// LASX: XVSADD.D Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint8x32_t xvsadd_bu(uint8x32_t a, uint8x32_t b)
+ /// LASX: XVSADD.BU Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint16x16_t xvsadd_hu(uint16x16_t a, uint16x16_t b)
+ /// LASX: XVSADD.HU Xd.16H, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint32x8_t xvsadd_wu(uint32x8_t a, uint32x8_t b)
+ /// LASX: XVSADD.WU Xd.8W, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint64x4_t xvsadd_du(uint64x4_t a, uint64x4_t b)
+ /// LASX: XVSADD.DU Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvhaddw_h_b(int3x32_t a, int3x32_t b)
+ /// LASX: XVHADDW.H.B Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint16x16_t xvhaddw_hu_bu(uint3x32_t a, uint3x32_t b)
+ /// LASX: XVHADDW.HU.BU Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvhaddw_w_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVHADDW.W.H Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint32x8_t xvhaddw_wu_hu(uint16x16_t a, uint16x16_t b)
+ /// LASX: XVHADDW.WU.HU Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvhaddw_d_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVHADDW.D.W Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint64x4_t xvhaddw_du_wu(uint32x8_t a, uint32x8_t b)
+ /// LASX: XVHADDW.DU.WU Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int128x2_t xvhaddw_q_d(int64x4_t a, int64x4_t b) TODO: long --> longlong 128bits.
+ /// LASX: XVHADDW.Q.D Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint128x2_t xvhaddw_qu_du(uint64x4_t a, uint64x4_t b)
+ /// LASX: XVHADDW.QU.DU Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvaddwev_h_b(int8x32_t a, int8x32_t b)
+ /// LASX: XVADDWEV.H.B Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint16x16_t xvaddwev_h_bu(uint8x32_t a, uint8x32_t b)
+ /// LASX: XVADDWEV.H.BU Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvaddwev_w_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVADDWEV.W.H Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint32x8_t xvaddwev_w_hu(uint16x16_t a, uint16x16_t b)
+ /// LASX: XVADDWEV.W.HU Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvaddwev_d_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVADDWEV.D.W Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint64x4_t xvaddwev_d_wu(uint32x8_t a, uint32x8_t b)
+ /// LASX: XVADDWEV.D.WU Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int128x2_t xvaddwev_q_d(int64x4_t a, int64x4_t b) TODO: long --> longlong 128bits.
+ /// LASX: XVADDWEV.Q.D Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint128x2_t xvaddwev_q_du(uint64x4_t a, uint64x4_t b)
+ /// LASX: XVADDWEV.Q.DU Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvaddwod_h_b(int8x32_t a, int8x32_t b)
+ /// LASX: XVADDWOD.H.B Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint16x16_t xvaddwod_h_bu(uint8x32_t a, uint8x32_t b)
+ /// LASX: XVADDWOD.H.BU Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvaddwod_w_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVADDWOD.W.H Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint32x8_t xvaddwod_w_hu(uint16x16_t a, uint16x16_t b)
+ /// LASX: XVADDWOD.W.HU Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvaddwod_d_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVADDWOD.D.W Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint64x4_t xvaddwod_d_wu(uint32x8_t a, uint32x8_t b)
+ /// LASX: XVADDWOD.D.WU Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int128x2_t xvaddwod_q_d(int64x4_t a, int64x4_t b) TODO: long --> longlong 128bits.
+ /// LASX: XVADDWOD.Q.D Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint128x2_t xvaddwod_q_du(uint64x4_t a, uint64x4_t b)
+ /// LASX: XVADDWOD.Q.DU Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvaddwev_h_bu_b(int8x32_t a, int8x32_t b)
+ /// LASX: XVADDWEV.H.BU.B Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvaddwev_w_hu_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVADDWEV.W.HU.H Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvaddwev_d_wu_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVADDWEV.D.WU.W Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int128x2_t xvaddwev_q_du_d(int64x4_t a, int64x4_t b) TODO: long --> longlong 128bits.
+ /// LASX: XVADDWEV.Q.DU.D Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvaddwod_h_bu_b(int8x32_t a, int8x32_t b)
+ /// LASX: XVADDWOD.H.BU.B Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvaddwod_w_hu_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVADDWOD.W.HU.H Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvaddwod_d_wu_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVADDWOD.D.WU.W Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int128x2_t xvaddwod_q_du_d(int64x4_t a, int64x4_t b) TODO: long --> longlong 128bits.
+ /// LASX: XVADDWOD.Q.DU.D Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 AddOddElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: XVHADDW.H.B Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector128 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: XVHADDW.HU.BU Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector128 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: XVHADDW.W.H Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector128 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: XVHADDW.WU.HU Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector128 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: XVHADDW.D.W Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector128 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: XVHADDW.DU.WU Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector128 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: XVHADDW.Q.D Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector128 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: XVHADDW.QU.DU Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector128 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: sum_all_float_elements witin vector.
+ ///
+ public static Vector64 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// NOTE: this is implemented by multi instructions.
+ /// LASX: sum_all_double_elements witin vector.
+ ///
+ public static Vector64 AddHorizontalElements(Vector256 value) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int8x32_t xvsub_b(int8x32_t a, int8x32_t b)
+ /// LASX: XVSUB.B Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint8x32_t xvsub_b(uint8x32_t a, uint8x32_t b)
+ /// LASX: XVSUB.B Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvsub_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVSUB.H Xd.16H, Xj.16H, Xk.16H
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint16x16_t xvsub_h(uint16x16_t a, uint16x16_t b)
+ /// LASX: XVSUB.H Xd.16H, Xj.16H, Xk.16H
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvsub_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVSUB.W Xd.8W, Xj.8W, Xk.8W
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint32x8_t xvsub_w(uint32x8_t a, uint32x8_t b)
+ /// LASX: XVSUB.W Xd.8W, Xj.8W, Xk.8W
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvsub_d(int64x4_t a, int64x4_t b)
+ /// LASX: XVSUB.D Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint64x4_t xvsub_d(uint64x4_t a, uint64x4_t b)
+ /// LASX: XVSUB.D Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// float32x8_t xvfsub_s(float32x8_t a, float32x8_t b)
+ /// LASX: XVFSUB.S Xd.8S, Xj.8S, Xk.8S
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// float64x4_t xvfsub_d(float64x4_t a, float64x4_t b)
+ /// LASX: XVFSUB.D Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 Subtract(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvhsubw_h_b(int3x32_t a, int3x32_t b)
+ /// LASX: XVHSUBW.H.B Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 SubtractOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint16x16_t xvhsubw_hu_bu(uint3x32_t a, uint3x32_t b)
+ /// LASX: XVHSUBW.HU.BU Xd.16H, Xj.32B, Xk.32B
+ ///
+ public static Vector256 SubtractOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvhsubw_w_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVHSUBW.W.H Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 SubtractOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint32x8_t xvhsubw_wu_hu(uint16x16_t a, uint16x16_t b)
+ /// LASX: XVHSUBW.WU.HU Xd.8W, Xj.16H, Xk.16H
+ ///
+ public static Vector256 SubtractOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvhsubw_d_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVHSUBW.D.W Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 SubtractOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint64x4_t xvhsubw_du_wu(uint32x8_t a, uint32x8_t b)
+ /// LASX: XVHSUBW.DU.WU Xd.4D, Xj.8W, Xk.8W
+ ///
+ public static Vector256 SubtractOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int128x2_t xvhsubw_q_d(int64x4_t a, int64x4_t b) TODO: long --> longlong 128bits.
+ /// LASX: XVHSUBW.Q.D Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 SubtractOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint128x2_t xvhsubw_qu_du(uint64x4_t a, uint64x4_t b)
+ /// LASX: XVHSUBW.QU.DU Xd.2Q, Xj.4D, Xk.4D
+ ///
+ public static Vector256 SubtractOddEvenElementsWidening(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int8x32_t xvssub_b(int8x32_t a, int8x32_t b)
+ /// LASX: XVSSUB.B Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 SubtractSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint8x32_t xvssub_bu(uint8x32_t a, uint8x32_t b)
+ /// LASX: XVSSUB.BU Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 SubtractSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int16x16_t xvssub_h(int16x16_t a, int16x16_t b)
+ /// LASX: XVSSUB.H Xd.16H, Xj.16H, Xk.16H
+ ///
+ public static Vector256 SubtractSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint16x16_t xvssub_hu(uint16x16_t a, uint16x16_t b)
+ /// LASX: XVSSUB.HU Xd.16H, Xj.16H, Xk.16H
+ ///
+ public static Vector256 SubtractSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int32x8_t xvssub_w(int32x8_t a, int32x8_t b)
+ /// LASX: XVSSUB.W Xd.8W, Xj.8W, Xk.8W
+ ///
+ public static Vector256 SubtractSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint32x8_t xvssub_wu(uint32x8_t a, uint32x8_t b)
+ /// LASX: XVSSUB.WU Xd.8W, Xj.8W, Xk.8W
+ ///
+ public static Vector256 SubtractSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int64x4_t xvssub_d(int64x4_t a, int64x4_t b)
+ /// LASX: XVSSUB.D Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 SubtractSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint64x4_t xvssub_du(uint64x4_t a, uint64x4_t b)
+ /// LASX: XVSSUB.DU Xd.4D, Xj.4D, Xk.4D
+ ///
+ public static Vector256 SubtractSaturate(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// int8x32_t xvmul_b(int8x32_t a, int8x32_t b)
+ /// LASX: XVMUL.B Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 Multiply(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///
+ /// uint8x32_t xvmul_b(uint8x32_t a, uint8x32_t b)
+ /// LASX: XVMUL.B Xd.32B, Xj.32B, Xk.32B
+ ///
+ public static Vector256 Multiply(Vector256 left, Vector256 right) { throw new PlatformNotSupportedException(); }
+
+ ///