Unverified Commit 114d3b4d authored by Mccaskey, Alex's avatar Mccaskey, Alex Committed by GitHub
Browse files

Merge pull request #197 from ausbin/bug/pass-manager-root-only

Run PassManager in SyntaxHandler only on top-level circuit
parents 985b8cb7 d48a041c
Loading
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -321,12 +321,13 @@ void QCORSyntaxHandler::GetReplacement(
  OS << "return;\n";
  OS << "}\n";

  OS << "xacc::internal_compiler::execute_pass_manager();\n";
  OS << "if (optimize_only) {\n";
  OS << "xacc::internal_compiler::execute_pass_manager();\n";
  OS << "return;\n";
  OS << "}\n";

  OS << "if (is_callable) {\n";
  OS << "xacc::internal_compiler::execute_pass_manager();\n";
  if (bufferNames.size() > 1) {
    OS << "xacc::AcceleratorBuffer * buffers[" << bufferNames.size() << "] = {";
    OS << bufferNames[0] << ".results()";
+2 −1
Original line number Diff line number Diff line
@@ -200,12 +200,13 @@ std::string construct_kernel_subtype(
  OS << "return;\n";
  OS << "}\n";

  OS << "xacc::internal_compiler::execute_pass_manager();\n";
  OS << "if (optimize_only) {\n";
  OS << "xacc::internal_compiler::execute_pass_manager();\n";
  OS << "return;\n";
  OS << "}\n";

  OS << "if (is_callable) {\n";
  OS << "xacc::internal_compiler::execute_pass_manager();\n";
  if (bufferNames.size() > 1) {
    OS << "xacc::AcceleratorBuffer * buffers[" << bufferNames.size() << "] = {";
    OS << bufferNames[0] << ".results()";