Skip to content

Commit a39b67b

Browse files
committed
Fix QuEST v4.2.0 GPU stub: densmatr_allTargDiagMatr now has 4 bool params
1 parent 82396f2 commit a39b67b

1 file changed

Lines changed: 17 additions & 5 deletions

File tree

crates/pecos-quest/src/gpu_stubs.cpp

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -415,7 +415,7 @@ void gpu_statevec_anyCtrlAnyTargDiagMatr_sub(Qureg q, std::vector<int> ctrls, st
415415
template<bool HasPower>
416416
void gpu_statevec_allTargDiagMatr_sub(Qureg q, FullStateDiagMatr m, std::complex<double> globalPhase) {}
417417

418-
template<bool HasPower, bool MultiplyOnly>
418+
template<bool HasPower, bool ApplyLeft, bool ApplyRight, bool ConjRight>
419419
void gpu_densmatr_allTargDiagMatr_sub(Qureg q, FullStateDiagMatr m, std::complex<double> globalPhase) {}
420420

421421
// Template stubs for partial trace operations
@@ -899,10 +899,22 @@ template void gpu_statevec_anyCtrlAnyTargDiagMatr_sub<-1, -1, true, true>(Qureg,
899899
template void gpu_statevec_allTargDiagMatr_sub<false>(Qureg, FullStateDiagMatr, std::complex<double>);
900900
template void gpu_statevec_allTargDiagMatr_sub<true>(Qureg, FullStateDiagMatr, std::complex<double>);
901901

902-
template void gpu_densmatr_allTargDiagMatr_sub<false, false>(Qureg, FullStateDiagMatr, std::complex<double>);
903-
template void gpu_densmatr_allTargDiagMatr_sub<false, true>(Qureg, FullStateDiagMatr, std::complex<double>);
904-
template void gpu_densmatr_allTargDiagMatr_sub<true, false>(Qureg, FullStateDiagMatr, std::complex<double>);
905-
template void gpu_densmatr_allTargDiagMatr_sub<true, true>(Qureg, FullStateDiagMatr, std::complex<double>);
902+
template void gpu_densmatr_allTargDiagMatr_sub<false, false, false, false>(Qureg, FullStateDiagMatr, std::complex<double>);
903+
template void gpu_densmatr_allTargDiagMatr_sub<false, false, false, true>(Qureg, FullStateDiagMatr, std::complex<double>);
904+
template void gpu_densmatr_allTargDiagMatr_sub<false, false, true, false>(Qureg, FullStateDiagMatr, std::complex<double>);
905+
template void gpu_densmatr_allTargDiagMatr_sub<false, false, true, true>(Qureg, FullStateDiagMatr, std::complex<double>);
906+
template void gpu_densmatr_allTargDiagMatr_sub<false, true, false, false>(Qureg, FullStateDiagMatr, std::complex<double>);
907+
template void gpu_densmatr_allTargDiagMatr_sub<false, true, false, true>(Qureg, FullStateDiagMatr, std::complex<double>);
908+
template void gpu_densmatr_allTargDiagMatr_sub<false, true, true, false>(Qureg, FullStateDiagMatr, std::complex<double>);
909+
template void gpu_densmatr_allTargDiagMatr_sub<false, true, true, true>(Qureg, FullStateDiagMatr, std::complex<double>);
910+
template void gpu_densmatr_allTargDiagMatr_sub<true, false, false, false>(Qureg, FullStateDiagMatr, std::complex<double>);
911+
template void gpu_densmatr_allTargDiagMatr_sub<true, false, false, true>(Qureg, FullStateDiagMatr, std::complex<double>);
912+
template void gpu_densmatr_allTargDiagMatr_sub<true, false, true, false>(Qureg, FullStateDiagMatr, std::complex<double>);
913+
template void gpu_densmatr_allTargDiagMatr_sub<true, false, true, true>(Qureg, FullStateDiagMatr, std::complex<double>);
914+
template void gpu_densmatr_allTargDiagMatr_sub<true, true, false, false>(Qureg, FullStateDiagMatr, std::complex<double>);
915+
template void gpu_densmatr_allTargDiagMatr_sub<true, true, false, true>(Qureg, FullStateDiagMatr, std::complex<double>);
916+
template void gpu_densmatr_allTargDiagMatr_sub<true, true, true, false>(Qureg, FullStateDiagMatr, std::complex<double>);
917+
template void gpu_densmatr_allTargDiagMatr_sub<true, true, true, true>(Qureg, FullStateDiagMatr, std::complex<double>);
906918

907919
// Explicit template instantiations for partial trace operations
908920
template void gpu_densmatr_partialTrace_sub<0>(Qureg, Qureg, std::vector<int>, std::vector<int>);

0 commit comments

Comments
 (0)