parent
95277e0311
commit
eeb4177843
|
@ -654,6 +654,16 @@ template bool Equihash<96,3>::OptimisedSolve(const eh_HashState& base_state,
|
||||||
const std::function<bool(EhSolverCancelCheck)> cancelled);
|
const std::function<bool(EhSolverCancelCheck)> cancelled);
|
||||||
template bool Equihash<96,3>::IsValidSolution(const eh_HashState& base_state, std::vector<eh_index> soln);
|
template bool Equihash<96,3>::IsValidSolution(const eh_HashState& base_state, std::vector<eh_index> soln);
|
||||||
|
|
||||||
|
// Explicit instantiations for Equihash<200,9>
|
||||||
|
template int Equihash<200,9>::InitialiseState(eh_HashState& base_state);
|
||||||
|
template bool Equihash<200,9>::BasicSolve(const eh_HashState& base_state,
|
||||||
|
const std::function<bool(std::vector<eh_index>)> validBlock,
|
||||||
|
const std::function<bool(EhSolverCancelCheck)> cancelled);
|
||||||
|
template bool Equihash<200,9>::OptimisedSolve(const eh_HashState& base_state,
|
||||||
|
const std::function<bool(std::vector<eh_index>)> validBlock,
|
||||||
|
const std::function<bool(EhSolverCancelCheck)> cancelled);
|
||||||
|
template bool Equihash<200,9>::IsValidSolution(const eh_HashState& base_state, std::vector<eh_index> soln);
|
||||||
|
|
||||||
// Explicit instantiations for Equihash<96,5>
|
// Explicit instantiations for Equihash<96,5>
|
||||||
template int Equihash<96,5>::InitialiseState(eh_HashState& base_state);
|
template int Equihash<96,5>::InitialiseState(eh_HashState& base_state);
|
||||||
template bool Equihash<96,5>::BasicSolve(const eh_HashState& base_state,
|
template bool Equihash<96,5>::BasicSolve(const eh_HashState& base_state,
|
||||||
|
|
|
@ -171,12 +171,15 @@ public:
|
||||||
#include "equihash.tcc"
|
#include "equihash.tcc"
|
||||||
|
|
||||||
static Equihash<96,3> Eh96_3;
|
static Equihash<96,3> Eh96_3;
|
||||||
|
static Equihash<200,9> Eh200_9;
|
||||||
static Equihash<96,5> Eh96_5;
|
static Equihash<96,5> Eh96_5;
|
||||||
static Equihash<48,5> Eh48_5;
|
static Equihash<48,5> Eh48_5;
|
||||||
|
|
||||||
#define EhInitialiseState(n, k, base_state) \
|
#define EhInitialiseState(n, k, base_state) \
|
||||||
if (n == 96 && k == 3) { \
|
if (n == 96 && k == 3) { \
|
||||||
Eh96_3.InitialiseState(base_state); \
|
Eh96_3.InitialiseState(base_state); \
|
||||||
|
} else if (n == 200 && k == 9) { \
|
||||||
|
Eh200_9.InitialiseState(base_state); \
|
||||||
} else if (n == 96 && k == 5) { \
|
} else if (n == 96 && k == 5) { \
|
||||||
Eh96_5.InitialiseState(base_state); \
|
Eh96_5.InitialiseState(base_state); \
|
||||||
} else if (n == 48 && k == 5) { \
|
} else if (n == 48 && k == 5) { \
|
||||||
|
@ -191,6 +194,8 @@ inline bool EhBasicSolve(unsigned int n, unsigned int k, const eh_HashState& bas
|
||||||
{
|
{
|
||||||
if (n == 96 && k == 3) {
|
if (n == 96 && k == 3) {
|
||||||
return Eh96_3.BasicSolve(base_state, validBlock, cancelled);
|
return Eh96_3.BasicSolve(base_state, validBlock, cancelled);
|
||||||
|
} else if (n == 200 && k == 9) {
|
||||||
|
return Eh200_9.BasicSolve(base_state, validBlock, cancelled);
|
||||||
} else if (n == 96 && k == 5) {
|
} else if (n == 96 && k == 5) {
|
||||||
return Eh96_5.BasicSolve(base_state, validBlock, cancelled);
|
return Eh96_5.BasicSolve(base_state, validBlock, cancelled);
|
||||||
} else if (n == 48 && k == 5) {
|
} else if (n == 48 && k == 5) {
|
||||||
|
@ -213,6 +218,8 @@ inline bool EhOptimisedSolve(unsigned int n, unsigned int k, const eh_HashState&
|
||||||
{
|
{
|
||||||
if (n == 96 && k == 3) {
|
if (n == 96 && k == 3) {
|
||||||
return Eh96_3.OptimisedSolve(base_state, validBlock, cancelled);
|
return Eh96_3.OptimisedSolve(base_state, validBlock, cancelled);
|
||||||
|
} else if (n == 200 && k == 9) {
|
||||||
|
return Eh200_9.OptimisedSolve(base_state, validBlock, cancelled);
|
||||||
} else if (n == 96 && k == 5) {
|
} else if (n == 96 && k == 5) {
|
||||||
return Eh96_5.OptimisedSolve(base_state, validBlock, cancelled);
|
return Eh96_5.OptimisedSolve(base_state, validBlock, cancelled);
|
||||||
} else if (n == 48 && k == 5) {
|
} else if (n == 48 && k == 5) {
|
||||||
|
@ -232,6 +239,8 @@ inline bool EhOptimisedSolveUncancellable(unsigned int n, unsigned int k, const
|
||||||
#define EhIsValidSolution(n, k, base_state, soln, ret) \
|
#define EhIsValidSolution(n, k, base_state, soln, ret) \
|
||||||
if (n == 96 && k == 3) { \
|
if (n == 96 && k == 3) { \
|
||||||
ret = Eh96_3.IsValidSolution(base_state, soln); \
|
ret = Eh96_3.IsValidSolution(base_state, soln); \
|
||||||
|
} else if (n == 200 && k == 9) { \
|
||||||
|
ret = Eh200_9.IsValidSolution(base_state, soln); \
|
||||||
} else if (n == 96 && k == 5) { \
|
} else if (n == 96 && k == 5) { \
|
||||||
ret = Eh96_5.IsValidSolution(base_state, soln); \
|
ret = Eh96_5.IsValidSolution(base_state, soln); \
|
||||||
} else if (n == 48 && k == 5) { \
|
} else if (n == 48 && k == 5) { \
|
||||||
|
|
Loading…
Reference in New Issue