-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathfptest.cuh
84 lines (64 loc) · 1.7 KB
/
fptest.cuh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
// bls12_381: Arithmetic for BLS12-381
// Copyright 2022-2023 Dag Arne Osvik
// Copyright 2022-2023 Luan Cardoso dos Santos
#ifndef FP_TEST_CUH
#define FP_TEST_CUH
#include <stdio.h>
#include "test.h"
#include "fp.cuh"
#define TESTVALS 800
#if (TESTVALS < 771)
# undef TESTVALS
# define TESTVALS 771
#endif
typedef fp_t testval_t;
#define TESTFUN(X) extern __global__ void X(testval_t *testval)
// Constant
TESTFUN(FpTestKAT);
TESTFUN(FpTestFibonacci);
TESTFUN(FpTestFibonacciPTX);
TESTFUN(FpTestEqPTXInline);
// Linear
TESTFUN(FpTestCmp);
TESTFUN(FpTestMulConst);
TESTFUN(FpTestMulConstPTX);
TESTFUN(FpTestAdd);
TESTFUN(FpTestAddPTX);
TESTFUN(FpTestSub);
TESTFUN(FpTestSubPTX);
TESTFUN(FpTestSqr);
TESTFUN(FpTestSqrPTX);
TESTFUN(FpTestMul);
TESTFUN(FpTestMulPTX);
TESTFUN(FpTestInv);
TESTFUN(FpTestMMA);
// Quadratic
TESTFUN(FpTestSqr2);
TESTFUN(FpTestSqr2PTX);
TESTFUN(FpTestCommutativeAdd);
TESTFUN(FpTestCommutativeAddPTX);
TESTFUN(FpTestCommutativeMul);
TESTFUN(FpTestCommutativeMulPTX);
// Cubic
TESTFUN(FpTestAssociativeAdd);
TESTFUN(FpTestAssociativeAddPTX);
TESTFUN(FpTestAssociativeMul);
TESTFUN(FpTestAssociativeMulPTX);
TESTFUN(FpTestAddDistributiveLeft);
TESTFUN(FpTestAddDistributiveLeftPTX);
TESTFUN(FpTestAddDistributiveRight);
TESTFUN(FpTestAddDistributiveRightPTX);
TESTFUN(FpTestSubDistributiveLeft);
TESTFUN(FpTestSubDistributiveLeftPTX);
TESTFUN(FpTestSubDistributiveRight);
TESTFUN(FpTestSubDistributiveRightPTX);
// Not implemented
TESTFUN(FpTestCopy);
TESTFUN(FpTestReflexivity);
TESTFUN(FpTestSymmetry);
TESTFUN(FpTestAdditiveIdentity);
TESTFUN(FpTestMultiplicativeIdentity);
TESTFUN(FpTestAdditiveInverse);
TESTFUN(FpTestMultiplicativeInverse);
#endif // FP_TEST_CUH
// vim: ts=4 et sw=4 si