X-Git-Url: http://plrg.eecs.uci.edu/git/?p=satune.git;a=blobdiff_plain;f=src%2FAST%2Felement.cc;h=d09db20631e9a56e4ca8162ce4fbcf690025b513;hp=54a5c4163780eb56a435d95f3aeb511f2476d83d;hb=8806dcf7185b7d3dd770ca64bbc0774bcbe8c90c;hpb=835bbfff70365c1b2116dec6f82b9f6e9f1806dd diff --git a/src/AST/element.cc b/src/AST/element.cc index 54a5c41..d09db20 100644 --- a/src/AST/element.cc +++ b/src/AST/element.cc @@ -35,12 +35,7 @@ ElementConst::ElementConst(uint64_t _value, Set *_set) : } Element *ElementConst::clone(CSolver *solver, CloneMap *map) { - Element *e = (Element *) map->get(this); - if (e != NULL) - return e; - e= solver->getElementConst(type, value); - map->put(this,e); - return e; + return solver->getElementConst(type, value); } Element *ElementSet::clone(CSolver *solver, CloneMap *map) { @@ -53,15 +48,11 @@ Element *ElementSet::clone(CSolver *solver, CloneMap *map) { } Element *ElementFunction::clone(CSolver *solver, CloneMap *map) { - Element *e = (Element *) map->get(this); - if (e != NULL) - return e; Element *array[inputs.getSize()]; for (uint i = 0; i < inputs.getSize(); i++) { array[i] = inputs.get(i)->clone(solver, map); } - e = solver->applyFunction(function->clone(solver, map), array, inputs.getSize(), overflowstatus->clone(solver, map)); - map->put(this,e); + Element *e = solver->applyFunction(function->clone(solver, map), array, inputs.getSize(), overflowstatus->clone(solver, map)); return e; }