From d25daa6203fd7e19b9e829ebcad8f92780ddca1d Mon Sep 17 00:00:00 2001 From: Jannis Harder Date: Mon, 28 Mar 2022 12:37:11 +0200 Subject: [PATCH] smtbmc: Avoid unnecessary deep copies during unrolling --- backends/smt2/smtio.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/backends/smt2/smtio.py b/backends/smt2/smtio.py index 3d458e6cf..14feec30d 100644 --- a/backends/smt2/smtio.py +++ b/backends/smt2/smtio.py @@ -20,7 +20,7 @@ import sys, re, os, signal import subprocess if os.name == "posix": import resource -from copy import deepcopy +from copy import copy from select import select from time import time from queue import Queue, Empty @@ -301,7 +301,7 @@ class SmtIo: key = tuple(stmt) if key not in self.unroll_cache: - decl = deepcopy(self.unroll_decls[key[0]]) + decl = copy(self.unroll_decls[key[0]]) self.unroll_cache[key] = "|UNROLL#%d|" % self.unroll_idcnt decl[1] = self.unroll_cache[key] @@ -442,10 +442,10 @@ class SmtIo: if stmt == "(push 1)": self.unroll_stack.append(( - deepcopy(self.unroll_sorts), - deepcopy(self.unroll_objs), - deepcopy(self.unroll_decls), - deepcopy(self.unroll_cache), + copy(self.unroll_sorts), + copy(self.unroll_objs), + copy(self.unroll_decls), + copy(self.unroll_cache), )) if stmt == "(pop 1)": -- 2.30.2