void llfat_reference_mg(void** fatlink, void** sitelink, void* ghost_sitelink, QudaPrecision prec, void* act_path_coeff) { switch(prec){ case QUDA_DOUBLE_PRECISION:{ llfat_cpu_mg((void**)fatlink, (dsu3_matrix**)sitelink, (dsu3_matrix*)ghost_sitelink, (double*) act_path_coeff); break; } case QUDA_SINGLE_PRECISION:{ llfat_cpu_mg((void**)fatlink, (fsu3_matrix**)sitelink, (fsu3_matrix*)ghost_sitelink, (float*) act_path_coeff); break; } default: fprintf(stderr, "ERROR: unsupported precision\n"); exit(1); break; } return; }
void llfat_reference_mg(void** fatlink, void** sitelink, void** ghost_sitelink, void** ghost_sitelink_diag, QudaPrecision prec, void* act_path_coeff) { Vs[0] = Vs_x; Vs[1] = Vs_y; Vs[2] = Vs_z; Vs[3] = Vs_t; Vsh[0] = Vsh_x; Vsh[1] = Vsh_y; Vsh[2] = Vsh_z; Vsh[3] = Vsh_t; switch(prec) { case QUDA_DOUBLE_PRECISION: { llfat_cpu_mg((void**)fatlink, (dsu3_matrix**)sitelink, (dsu3_matrix**)ghost_sitelink, (dsu3_matrix**)ghost_sitelink_diag, (double*) act_path_coeff); break; } case QUDA_SINGLE_PRECISION: { llfat_cpu_mg((void**)fatlink, (fsu3_matrix**)sitelink, (fsu3_matrix**)ghost_sitelink, (fsu3_matrix**)ghost_sitelink_diag, (float*) act_path_coeff); break; } default: fprintf(stderr, "ERROR: unsupported precision(%d)\n", prec); exit(1); break; } return; }