Use the `-duplicate` option rather than `-save` and `-load` with an explicit name.
authorAlberto Gonzalez <boqwxp@airmail.cc>
Fri, 3 Apr 2020 16:43:41 +0000 (16:43 +0000)
committerAlberto Gonzalez <boqwxp@airmail.cc>
Sat, 4 Apr 2020 22:13:26 +0000 (22:13 +0000)
Co-Authored-By: Claire Wolf <claire@symbioticeda.com>
passes/sat/qbfsat.cc

index bbe2f3354e0d7a3b61050406d0becf9c33032a3f..3db84a57934554840dfe7757c94ee412e53f8bd3 100644 (file)
@@ -446,7 +446,7 @@ struct QbfSatPass : public Pass {
                if (!opt.specialize_from_file) {
                        //Save the design to restore after modiyfing the current module.
                        std::string module_name = module->name.str();
-                       Pass::call(design, "design -save _qbfsat_tmp");
+                       Pass::call(design, "design -duplicate");
 
                        //Replace input wires with wires assigned $allconst cells.
                        std::set<std::string> input_wires = validate_design_and_get_inputs(module);
@@ -455,7 +455,7 @@ struct QbfSatPass : public Pass {
                                assume_miter_outputs(module);
 
                        QbfSolutionType ret = qbf_solve(module, opt);
-                       Pass::call(design, "design -load _qbfsat_tmp");
+                       Pass::call(design, "design -pop");
                        module = design->module(module_name);
 
                        if (ret.unknown)