From: Michael Schroeder Date: Mon, 4 Feb 2013 18:23:10 +0000 (+0100) Subject: optimize code a bit to make analyze_unsolvable faster X-Git-Tag: BASE-SuSE-Code-12_3-Branch~93 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d8da03ef0940abe3cf91fdeb3a6c172f6cb48e7e;p=thirdparty%2Flibsolv.git optimize code a bit to make analyze_unsolvable faster --- diff --git a/src/rules.c b/src/rules.c index 11634e99..b0a6f948 100644 --- a/src/rules.c +++ b/src/rules.c @@ -1841,6 +1841,8 @@ solver_reenablepolicyrules(Solver *solv, int jobidx) jobtodisablelist(solv, job->elements[jobidx - 1], job->elements[jobidx], &q); if (!q.count) return; + if (job->count > 64) + queue_prealloc(&allq, job->count * 2); for (i = solv->jobrules; i < solv->jobrules_end; i++) { r = solv->rules + i; diff --git a/src/solver.c b/src/solver.c index e0ca1407..38b53c22 100644 --- a/src/solver.c +++ b/src/solver.c @@ -965,11 +965,11 @@ solver_reset(Solver *solv) v = solv->decisionq.elements[i]; solv->decisionmap[v > 0 ? v : -v] = 0; } - solv->decisionq_why.count = 0; - solv->decisionq.count = 0; + queue_empty(&solv->decisionq_why); + queue_empty(&solv->decisionq); solv->recommends_index = -1; solv->propagate_index = 0; - solv->branches.count = 0; + queue_empty(&solv->branches); /* adapt learnt rule status to new set of enabled/disabled rules */ enabledisablelearntrules(solv);