public void RunStructFldScenario(SimpleTernaryOpTest__MultiplyWideningLowerAndSubtract_Vector64_SByte testClass) { var result = AdvSimd.MultiplyWideningLowerAndSubtract(_fld1, _fld2, _fld3); Unsafe.Write(testClass._dataTable.outArrayPtr, result); testClass.ValidateResult(_fld1, _fld2, _fld3, testClass._dataTable.outArrayPtr); }
public void RunStructFldScenario_Load(SimpleTernaryOpTest__MultiplyWideningLowerAndSubtract_Vector64_SByte testClass) { fixed(Vector128 <Int16> *pFld1 = &_fld1) fixed(Vector64 <SByte> *pFld2 = &_fld2) fixed(Vector64 <SByte> *pFld3 = &_fld3) { var result = AdvSimd.MultiplyWideningLowerAndSubtract( AdvSimd.LoadVector128((Int16 *)(pFld1)), AdvSimd.LoadVector64((SByte *)(pFld2)), AdvSimd.LoadVector64((SByte *)(pFld3)) ); Unsafe.Write(testClass._dataTable.outArrayPtr, result); testClass.ValidateResult(_fld1, _fld2, _fld3, testClass._dataTable.outArrayPtr); } }