Exemplo n.º 1
0
        public void RunLclVarScenario_Load()
        {
            TestLibrary.TestFramework.BeginScenario(nameof(RunLclVarScenario_Load));

            var left   = Pclmulqdq.LoadVector128((Int64 *)(_dataTable.inArray1Ptr));
            var right  = Pclmulqdq.LoadVector128((Int64 *)(_dataTable.inArray2Ptr));
            var result = Pclmulqdq.CarrylessMultiply(left, right, 1);

            Unsafe.Write(_dataTable.outArrayPtr, result);
            ValidateResult(_dataTable.outArrayPtr);
        }
Exemplo n.º 2
0
        public void RunBasicScenario_Load()
        {
            TestLibrary.TestFramework.BeginScenario(nameof(RunBasicScenario_Load));

            var result = Pclmulqdq.CarrylessMultiply(
                Pclmulqdq.LoadVector128((UInt64 *)(_dataTable.inArray1Ptr)),
                Pclmulqdq.LoadVector128((UInt64 *)(_dataTable.inArray2Ptr)),
                16
                );

            Unsafe.Write(_dataTable.outArrayPtr, result);
            ValidateResult(_dataTable.outArrayPtr);
        }
Exemplo n.º 3
0
        public void RunReflectionScenario_Load()
        {
            TestLibrary.TestFramework.BeginScenario(nameof(RunReflectionScenario_Load));

            var result = typeof(Pclmulqdq).GetMethod(nameof(Pclmulqdq.CarrylessMultiply), new Type[] { typeof(Vector128 <Int64>), typeof(Vector128 <Int64>), typeof(byte) })
                         .Invoke(null, new object[] {
                Pclmulqdq.LoadVector128((Int64 *)(_dataTable.inArray1Ptr)),
                Pclmulqdq.LoadVector128((Int64 *)(_dataTable.inArray2Ptr)),
                (byte)1
            });

            Unsafe.Write(_dataTable.outArrayPtr, (Vector128 <Int64>)(result));
            ValidateResult(_dataTable.outArrayPtr);
        }