|
|
|
@ -66,6 +66,36 @@ typedef struct electrum_tmp
|
|
|
|
|
|
|
|
|
|
static const char *SIGNATURE_ELECTRUM = "$electrum$4*";
|
|
|
|
|
|
|
|
|
|
bool module_unstable_warning (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra, MAYBE_UNUSED const hc_device_param_t *device_param)
|
|
|
|
|
{
|
|
|
|
|
// AMD Radeon Pro W5700X, Metal.Version.: 261.13, compiler hangs
|
|
|
|
|
if (device_param->is_metal == true)
|
|
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
char *module_jit_build_options (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra, MAYBE_UNUSED const hashes_t *hashes, MAYBE_UNUSED const hc_device_param_t *device_param)
|
|
|
|
|
{
|
|
|
|
|
char *jit_build_options = NULL;
|
|
|
|
|
|
|
|
|
|
// Extra treatment for Apple systems
|
|
|
|
|
if (device_param->opencl_platform_vendor_id == VENDOR_ID_APPLE)
|
|
|
|
|
{
|
|
|
|
|
// Metal
|
|
|
|
|
if (device_param->is_metal == true)
|
|
|
|
|
{
|
|
|
|
|
hc_asprintf (&jit_build_options, "-D _unroll");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return jit_build_options;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return jit_build_options;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
u64 module_esalt_size (MAYBE_UNUSED const hashconfig_t *hashconfig, MAYBE_UNUSED const user_options_t *user_options, MAYBE_UNUSED const user_options_extra_t *user_options_extra)
|
|
|
|
|
{
|
|
|
|
|
const u64 esalt_size = (const u64) sizeof (electrum_t);
|
|
|
|
@ -296,7 +326,7 @@ void module_init (module_ctx_t *module_ctx)
|
|
|
|
|
module_ctx->module_hook23 = MODULE_DEFAULT;
|
|
|
|
|
module_ctx->module_hook_salt_size = MODULE_DEFAULT;
|
|
|
|
|
module_ctx->module_hook_size = MODULE_DEFAULT;
|
|
|
|
|
module_ctx->module_jit_build_options = MODULE_DEFAULT;
|
|
|
|
|
module_ctx->module_jit_build_options = module_jit_build_options;
|
|
|
|
|
module_ctx->module_jit_cache_disable = MODULE_DEFAULT;
|
|
|
|
|
module_ctx->module_kernel_accel_max = MODULE_DEFAULT;
|
|
|
|
|
module_ctx->module_kernel_accel_min = MODULE_DEFAULT;
|
|
|
|
@ -323,6 +353,6 @@ void module_init (module_ctx_t *module_ctx)
|
|
|
|
|
module_ctx->module_st_hash = module_st_hash;
|
|
|
|
|
module_ctx->module_st_pass = module_st_pass;
|
|
|
|
|
module_ctx->module_tmp_size = module_tmp_size;
|
|
|
|
|
module_ctx->module_unstable_warning = MODULE_DEFAULT;
|
|
|
|
|
module_ctx->module_unstable_warning = module_unstable_warning;
|
|
|
|
|
module_ctx->module_warmup_disable = MODULE_DEFAULT;
|
|
|
|
|
}
|
|
|
|
|