Changeset: 1285e9e2d8e9 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1285e9e2d8e9
Modified Files:
        monetdb5/mal/mal_listing.c
        monetdb5/mal/mal_recycle.c
        monetdb5/optimizer/opt_recycler.c
Branch: default
Log Message:

Minor changes to show recycle dependencies


diffs (62 lines):

diff --git a/monetdb5/mal/mal_listing.c b/monetdb5/mal/mal_listing.c
--- a/monetdb5/mal/mal_listing.c
+++ b/monetdb5/mal/mal_listing.c
@@ -501,6 +501,9 @@ instruction2str(MalBlkPtr mb, MalStkPtr 
                                } else
                                        VALformat(&cv, &stk->stk[getArg(p, i)]);
                        } else {
+                               if ( p->recycle && flg & LIST_MAL_ARG)
+                                       snprintf(t,(len-(t-base)),"%s%s=", 
(*getArgName(mb,p,i)== TMPMARKER?"X":""), getArgName(mb, p, i));
+                               advance(t,base,len);
                                if( getTailType(getArgType(mb,p,i)) > TYPE_str )
                                { char *ct=cv;
                                        VALformat(&cv, &getVar(mb, getArg(p, 
i))->value);
diff --git a/monetdb5/mal/mal_recycle.c b/monetdb5/mal/mal_recycle.c
--- a/monetdb5/mal/mal_recycle.c
+++ b/monetdb5/mal/mal_recycle.c
@@ -541,9 +541,6 @@ RECYCLEkeep(Client cntxt, MalBlkPtr mb, 
                v = &s->stk[j];
                VALcopy(&cst,v);
                c = fndConstant(recycleBlk, &cst, recycleBlk->vtop);
-#ifdef _DEBUG_RECYCLE_
-               //printf("#CONSTANT %s %d\n", getVarName(mb,j), c);
-#endif
                if (c<0)
                        c = defConstant(recycleBlk, v->vtype, &cst);
                if (v->vtype == TYPE_bat)
@@ -553,7 +550,7 @@ RECYCLEkeep(Client cntxt, MalBlkPtr mb, 
        }
 #ifdef _DEBUG_RECYCLE_
        mnstr_printf(cntxt->fdout,"#RECYCLE [%3d] ",recycleBlk->stop);
-       printInstruction( cntxt->fdout,recycleBlk, 0, q,LIST_MAL_STMT);
+       printInstruction( cntxt->fdout,recycleBlk, 0, q,LIST_MAL_DEBUG);
 #else
        (void) cntxt;
 #endif
diff --git a/monetdb5/optimizer/opt_recycler.c 
b/monetdb5/optimizer/opt_recycler.c
--- a/monetdb5/optimizer/opt_recycler.c
+++ b/monetdb5/optimizer/opt_recycler.c
@@ -79,6 +79,10 @@ OPTrecyclerImplementation(Client cntxt, 
                        break;
                }
 
+               if ( getModuleId(p) == languageRef){
+                       pushInstruction(mb,p);
+                       continue;
+               }
                if ( isUpdateInstruction(p) || hasSideEffects(p,TRUE)){
                        /*  update instructions are not recycled but monitored*/
                        pushInstruction(mb, p);
@@ -108,10 +112,10 @@ OPTrecyclerImplementation(Client cntxt, 
                        if (recycled[getArg(p, j)] ==0)
                                cand++;
                if (cnt == p->argc - p->retc && cand == p->retc) {
-                       //OPTDEBUGrecycle {
+                       OPTDEBUGrecycle {
                                mnstr_printf(cntxt->fdout, "#recycle 
instruction: ");
                                printInstruction(cntxt->fdout, mb, 0, p, 
LIST_MAL_DEBUG);
-                       //}
+                       }
                        marks++;
                        p->recycle = recycleMaxInterest; /* this instruction is 
to be monitored */
                        for (j = 0; j < p->retc; j++)
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to