From 4f3416bf998cdf3fc8b6adf6debb7e65d663bd7c Mon Sep 17 00:00:00 2001 From: Aina Niemetz Date: Tue, 8 May 2018 12:12:01 -0700 Subject: Fix order of preprocessing pass registration. (#1887) --- src/smt/smt_engine.cpp | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/src/smt/smt_engine.cpp b/src/smt/smt_engine.cpp index 10d21a66c..c9733983a 100644 --- a/src/smt/smt_engine.cpp +++ b/src/smt/smt_engine.cpp @@ -2586,27 +2586,29 @@ void SmtEnginePrivate::finishInit() { d_preprocessingPassContext.reset(new PreprocessingPassContext(&d_smt)); // TODO: register passes here (this will likely change when we add support for // actually assembling preprocessing pipelines). - std::unique_ptr bvGauss(new BVGauss(d_preprocessingPassContext.get())); - std::unique_ptr intToBV(new IntToBV(d_preprocessingPassContext.get())); + std::unique_ptr boolToBv( + new BoolToBV(d_preprocessingPassContext.get())); + std::unique_ptr bvGauss( + new BVGauss(d_preprocessingPassContext.get())); + std::unique_ptr bvIntroPow2( + new BvIntroPow2(d_preprocessingPassContext.get())); + std::unique_ptr bvToBool( + new BVToBool(d_preprocessingPassContext.get())); + std::unique_ptr intToBV( + new IntToBV(d_preprocessingPassContext.get())); std::unique_ptr pbProc( new PseudoBooleanProcessor(d_preprocessingPassContext.get())); std::unique_ptr realToInt( new RealToInt(d_preprocessingPassContext.get())); + d_preprocessingPassRegistry.registerPass("bool-to-bv", std::move(boolToBv)); d_preprocessingPassRegistry.registerPass("bv-gauss", std::move(bvGauss)); + d_preprocessingPassRegistry.registerPass("bv-intro-pow2", + std::move(bvIntroPow2)); + d_preprocessingPassRegistry.registerPass("bv-to-bool", std::move(bvToBool)); d_preprocessingPassRegistry.registerPass("int-to-bv", std::move(intToBV)); - d_preprocessingPassRegistry.registerPass("real-to-int", std::move(realToInt)); d_preprocessingPassRegistry.registerPass("pseudo-boolean-processor", std::move(pbProc)); - std::unique_ptr bvToBool( - new BVToBool(d_preprocessingPassContext.get())); - d_preprocessingPassRegistry.registerPass("bv-to-bool", std::move(bvToBool)); - std::unique_ptr boolToBv( - new BoolToBV(d_preprocessingPassContext.get())); - d_preprocessingPassRegistry.registerPass("bool-to-bv", std::move(boolToBv)); - std::unique_ptr bvIntroPow2( - new BvIntroPow2(d_preprocessingPassContext.get())); - d_preprocessingPassRegistry.registerPass("bv-intro-pow2", - std::move(bvIntroPow2)); + d_preprocessingPassRegistry.registerPass("real-to-int", std::move(realToInt)); } Node SmtEnginePrivate::expandDefinitions(TNode n, unordered_map& cache, bool expandOnly) -- cgit v1.2.3