Changeset: e8b0a08a2de9 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e8b0a08a2de9
Modified Files:
        monetdb5/optimizer/opt_dataflow.mx
Branch: default
Log Message:

Relax side-effect test
Also make sure that a dataflow block is generated for trivial programs too.


diffs (27 lines):

diff --git a/monetdb5/optimizer/opt_dataflow.mx 
b/monetdb5/optimizer/opt_dataflow.mx
--- a/monetdb5/optimizer/opt_dataflow.mx
+++ b/monetdb5/optimizer/opt_dataflow.mx
@@ -186,7 +186,7 @@
 
                if (p->token == ENDsymbol)
                        break;
-               if (hasSideEffects(p,TRUE) || isUnsafeFunction(p) || 
blockCntrl(p) || (!dumbcopy && blockExit(p)) || (getModuleId(p) == sqlRef && 
isUpdateInstruction(p)) || dflowAssignTest(span,p,i) ){
+               if (hasSideEffects(p,FALSE) || isUnsafeFunction(p) || 
blockCntrl(p) || (!dumbcopy && blockExit(p)) || (getModuleId(p) == sqlRef && 
isUpdateInstruction(p)) || dflowAssignTest(span,p,i) ){
                        @:flowblock@
                        pushInstruction(mb,p);
                        continue;
@@ -226,13 +226,7 @@
                if (cnt && cnt == p->argc-p->retc)
                        entries++;
        }
-       if (flowblock){
-               for( j=start ; j<i; j++){
-                       if (old[j] == NULL)
-                               continue;
-                       pushInstruction(mb,old[j]);
-               }
-       }
+       @:flowblock@
        /* take the remainder as is */
        for (; i<limit; i++) 
                if (old[i])
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to