Exemplo n.º 1
0
            public void RunStructFldScenario(SimpleTernaryOpTest__MultiplyDoublingWideningAndAddSaturateScalar_Vector64_Int16 testClass)
            {
                var result = AdvSimd.Arm64.MultiplyDoublingWideningAndAddSaturateScalar(_fld1, _fld2, _fld3);

                Unsafe.Write(testClass._dataTable.outArrayPtr, result);
                testClass.ValidateResult(_fld1, _fld2, _fld3, testClass._dataTable.outArrayPtr);
            }
Exemplo n.º 2
0
            public void RunStructFldScenario_Load(SimpleTernaryOpTest__MultiplyDoublingWideningAndAddSaturateScalar_Vector64_Int16 testClass)
            {
                fixed(Vector64 <Int32> *pFld1 = &_fld1)
                fixed(Vector64 <Int16> *pFld2 = &_fld2)
                fixed(Vector64 <Int16> *pFld3 = &_fld3)
                {
                    var result = AdvSimd.Arm64.MultiplyDoublingWideningAndAddSaturateScalar(
                        AdvSimd.LoadVector64((Int32 *)(pFld1)),
                        AdvSimd.LoadVector64((Int16 *)(pFld2)),
                        AdvSimd.LoadVector64((Int16 *)(pFld3))
                        );

                    Unsafe.Write(testClass._dataTable.outArrayPtr, result);
                    testClass.ValidateResult(_fld1, _fld2, _fld3, testClass._dataTable.outArrayPtr);
                }
            }