AdvSimd.MultiplyWideningLowerAndAdd Method
In this article
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
MultiplyWideningLowerAndAdd(Vector128<UInt64>, Vector64<UInt32>, Vector64<UInt32>) |
uint64x2_t vmlal_u32 (uint64x2_t a, uint32x2_t b, uint32x2_t c) A32: VMLAL.U32 Qd, Dn, Dm A64: UMLAL Vd.2D, Vn.2S, Vm.2S |
MultiplyWideningLowerAndAdd(Vector128<UInt32>, Vector64<UInt16>, Vector64<UInt16>) |
uint32x4_t vmlal_u16 (uint32x4_t a, uint16x4_t b, uint16x4_t c) A32: VMLAL.U16 Qd, Dn, Dm A64: UMLAL Vd.4S, Vn.4H, Vm.4H |
MultiplyWideningLowerAndAdd(Vector128<UInt16>, Vector64<Byte>, Vector64<Byte>) |
uint16x8_t vmlal_u8 (uint16x8_t a, uint8x8_t b, uint8x8_t c) A32: VMLAL.U8 Qd, Dn, Dm A64: UMLAL Vd.8H, Vn.8B, Vm.8B |
MultiplyWideningLowerAndAdd(Vector128<Int16>, Vector64<SByte>, Vector64<SByte>) |
int16x8_t vmlal_s8 (int16x8_t a, int8x8_t b, int8x8_t c) A32: VMLAL.S8 Qd, Dn, Dm A64: SMLAL Vd.8H, Vn.8B, Vm.8B |
MultiplyWideningLowerAndAdd(Vector128<Int32>, Vector64<Int16>, Vector64<Int16>) |
int32x4_t vmlal_s16 (int32x4_t a, int16x4_t b, int16x4_t c) A32: VMLAL.S16 Qd, Dn, Dm A64: SMLAL Vd.4S, Vn.4H, Vm.4H |
MultiplyWideningLowerAndAdd(Vector128<Int64>, Vector64<Int32>, Vector64<Int32>) |
int64x2_t vmlal_s32 (int64x2_t a, int32x2_t b, int32x2_t c) A32: VMLAL.S32 Qd, Dn, Dm A64: SMLAL Vd.2D, Vn.2S, Vm.2S |
uint64x2_t vmlal_u32 (uint64x2_t a, uint32x2_t b, uint32x2_t c)
A32: VMLAL.U32 Qd, Dn, Dm
A64: UMLAL Vd.2D, Vn.2S, Vm.2S
public:
static System::Runtime::Intrinsics::Vector128<System::UInt64> MultiplyWideningLowerAndAdd(System::Runtime::Intrinsics::Vector128<System::UInt64> addend, System::Runtime::Intrinsics::Vector64<System::UInt32> left, System::Runtime::Intrinsics::Vector64<System::UInt32> right);
public static System.Runtime.Intrinsics.Vector128<ulong> MultiplyWideningLowerAndAdd(System.Runtime.Intrinsics.Vector128<ulong> addend, System.Runtime.Intrinsics.Vector64<uint> left, System.Runtime.Intrinsics.Vector64<uint> right);
static member MultiplyWideningLowerAndAdd : System.Runtime.Intrinsics.Vector128<uint64> * System.Runtime.Intrinsics.Vector64<uint32> * System.Runtime.Intrinsics.Vector64<uint32> -> System.Runtime.Intrinsics.Vector128<uint64>
Public Shared Function MultiplyWideningLowerAndAdd (addend As Vector128(Of ULong), left As Vector64(Of UInteger), right As Vector64(Of UInteger)) As Vector128(Of ULong)
Parameters
Returns
Applies to
.NET 10 and other versions
Product | Versions |
---|---|
.NET | 5, 6, 7, 8, 9, 10 |
uint32x4_t vmlal_u16 (uint32x4_t a, uint16x4_t b, uint16x4_t c)
A32: VMLAL.U16 Qd, Dn, Dm
A64: UMLAL Vd.4S, Vn.4H, Vm.4H
public:
static System::Runtime::Intrinsics::Vector128<System::UInt32> MultiplyWideningLowerAndAdd(System::Runtime::Intrinsics::Vector128<System::UInt32> addend, System::Runtime::Intrinsics::Vector64<System::UInt16> left, System::Runtime::Intrinsics::Vector64<System::UInt16> right);
public static System.Runtime.Intrinsics.Vector128<uint> MultiplyWideningLowerAndAdd(System.Runtime.Intrinsics.Vector128<uint> addend, System.Runtime.Intrinsics.Vector64<ushort> left, System.Runtime.Intrinsics.Vector64<ushort> right);
static member MultiplyWideningLowerAndAdd : System.Runtime.Intrinsics.Vector128<uint32> * System.Runtime.Intrinsics.Vector64<uint16> * System.Runtime.Intrinsics.Vector64<uint16> -> System.Runtime.Intrinsics.Vector128<uint32>
Public Shared Function MultiplyWideningLowerAndAdd (addend As Vector128(Of UInteger), left As Vector64(Of UShort), right As Vector64(Of UShort)) As Vector128(Of UInteger)
Parameters
Returns
Applies to
.NET 10 and other versions
Product | Versions |
---|---|
.NET | 5, 6, 7, 8, 9, 10 |
uint16x8_t vmlal_u8 (uint16x8_t a, uint8x8_t b, uint8x8_t c)
A32: VMLAL.U8 Qd, Dn, Dm
A64: UMLAL Vd.8H, Vn.8B, Vm.8B
public:
static System::Runtime::Intrinsics::Vector128<System::UInt16> MultiplyWideningLowerAndAdd(System::Runtime::Intrinsics::Vector128<System::UInt16> addend, System::Runtime::Intrinsics::Vector64<System::Byte> left, System::Runtime::Intrinsics::Vector64<System::Byte> right);
public static System.Runtime.Intrinsics.Vector128<ushort> MultiplyWideningLowerAndAdd(System.Runtime.Intrinsics.Vector128<ushort> addend, System.Runtime.Intrinsics.Vector64<byte> left, System.Runtime.Intrinsics.Vector64<byte> right);
static member MultiplyWideningLowerAndAdd : System.Runtime.Intrinsics.Vector128<uint16> * System.Runtime.Intrinsics.Vector64<byte> * System.Runtime.Intrinsics.Vector64<byte> -> System.Runtime.Intrinsics.Vector128<uint16>
Public Shared Function MultiplyWideningLowerAndAdd (addend As Vector128(Of UShort), left As Vector64(Of Byte), right As Vector64(Of Byte)) As Vector128(Of UShort)
Parameters
Returns
Applies to
.NET 10 and other versions
Product | Versions |
---|---|
.NET | 5, 6, 7, 8, 9, 10 |
int16x8_t vmlal_s8 (int16x8_t a, int8x8_t b, int8x8_t c)
A32: VMLAL.S8 Qd, Dn, Dm
A64: SMLAL Vd.8H, Vn.8B, Vm.8B
public:
static System::Runtime::Intrinsics::Vector128<short> MultiplyWideningLowerAndAdd(System::Runtime::Intrinsics::Vector128<short> addend, System::Runtime::Intrinsics::Vector64<System::SByte> left, System::Runtime::Intrinsics::Vector64<System::SByte> right);
public static System.Runtime.Intrinsics.Vector128<short> MultiplyWideningLowerAndAdd(System.Runtime.Intrinsics.Vector128<short> addend, System.Runtime.Intrinsics.Vector64<sbyte> left, System.Runtime.Intrinsics.Vector64<sbyte> right);
static member MultiplyWideningLowerAndAdd : System.Runtime.Intrinsics.Vector128<int16> * System.Runtime.Intrinsics.Vector64<sbyte> * System.Runtime.Intrinsics.Vector64<sbyte> -> System.Runtime.Intrinsics.Vector128<int16>
Public Shared Function MultiplyWideningLowerAndAdd (addend As Vector128(Of Short), left As Vector64(Of SByte), right As Vector64(Of SByte)) As Vector128(Of Short)
Parameters
Returns
Applies to
.NET 10 and other versions
Product | Versions |
---|---|
.NET | 5, 6, 7, 8, 9, 10 |
int32x4_t vmlal_s16 (int32x4_t a, int16x4_t b, int16x4_t c)
A32: VMLAL.S16 Qd, Dn, Dm
A64: SMLAL Vd.4S, Vn.4H, Vm.4H
public:
static System::Runtime::Intrinsics::Vector128<int> MultiplyWideningLowerAndAdd(System::Runtime::Intrinsics::Vector128<int> addend, System::Runtime::Intrinsics::Vector64<short> left, System::Runtime::Intrinsics::Vector64<short> right);
public static System.Runtime.Intrinsics.Vector128<int> MultiplyWideningLowerAndAdd(System.Runtime.Intrinsics.Vector128<int> addend, System.Runtime.Intrinsics.Vector64<short> left, System.Runtime.Intrinsics.Vector64<short> right);
static member MultiplyWideningLowerAndAdd : System.Runtime.Intrinsics.Vector128<int> * System.Runtime.Intrinsics.Vector64<int16> * System.Runtime.Intrinsics.Vector64<int16> -> System.Runtime.Intrinsics.Vector128<int>
Public Shared Function MultiplyWideningLowerAndAdd (addend As Vector128(Of Integer), left As Vector64(Of Short), right As Vector64(Of Short)) As Vector128(Of Integer)
Parameters
Returns
Applies to
.NET 10 and other versions
Product | Versions |
---|---|
.NET | 5, 6, 7, 8, 9, 10 |
int64x2_t vmlal_s32 (int64x2_t a, int32x2_t b, int32x2_t c)
A32: VMLAL.S32 Qd, Dn, Dm
A64: SMLAL Vd.2D, Vn.2S, Vm.2S
public:
static System::Runtime::Intrinsics::Vector128<long> MultiplyWideningLowerAndAdd(System::Runtime::Intrinsics::Vector128<long> addend, System::Runtime::Intrinsics::Vector64<int> left, System::Runtime::Intrinsics::Vector64<int> right);
public static System.Runtime.Intrinsics.Vector128<long> MultiplyWideningLowerAndAdd(System.Runtime.Intrinsics.Vector128<long> addend, System.Runtime.Intrinsics.Vector64<int> left, System.Runtime.Intrinsics.Vector64<int> right);
static member MultiplyWideningLowerAndAdd : System.Runtime.Intrinsics.Vector128<int64> * System.Runtime.Intrinsics.Vector64<int> * System.Runtime.Intrinsics.Vector64<int> -> System.Runtime.Intrinsics.Vector128<int64>
Public Shared Function MultiplyWideningLowerAndAdd (addend As Vector128(Of Long), left As Vector64(Of Integer), right As Vector64(Of Integer)) As Vector128(Of Long)
Parameters
Returns
Applies to
.NET 10 and other versions
Product | Versions |
---|---|
.NET | 5, 6, 7, 8, 9, 10 |
.NET feedback
.NET is an open source project. Select a link to provide feedback:
Additional resources
In this article
- Definition
- Overloads
- MultiplyWideningLowerAndAdd(Vector128<UInt64>, Vector64<UInt32>, Vector64<UInt32>)
- MultiplyWideningLowerAndAdd(Vector128<UInt32>, Vector64<UInt16>, Vector64<UInt16>)
- MultiplyWideningLowerAndAdd(Vector128<UInt16>, Vector64<Byte>, Vector64<Byte>)
- MultiplyWideningLowerAndAdd(Vector128<Int16>, Vector64<SByte>, Vector64<SByte>)
- MultiplyWideningLowerAndAdd(Vector128<Int32>, Vector64<Int16>, Vector64<Int16>)
- MultiplyWideningLowerAndAdd(Vector128<Int64>, Vector64<Int32>, Vector64<Int32>)