Update of /cvsroot/monetdb/MonetDB5/src/optimizer
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv10682
Modified Files:
opt_macro.mx
Log Message:
Don't introduce dummy variablen for the return.
The return statements is already normalized, making
all variables known.
Index: opt_macro.mx
===================================================================
RCS file: /cvsroot/monetdb/MonetDB5/src/optimizer/opt_macro.mx,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -d -r1.29 -r1.30
--- opt_macro.mx 2 Jan 2008 08:21:13 -0000 1.29
+++ opt_macro.mx 5 Jan 2008 09:21:29 -0000 1.30
@@ -282,14 +282,6 @@
for (i = 0; i < pc; i++)
ns[k++] = mb->stmt[i];
- /* make result variable(s) known, ie assign a nil value */
- for (n = 0; n < p->retc; n++) {
- q = ns[k++] = newInstruction(NULL, ASSIGNsymbol);
- q->argc = q->retc = 0;
- q= pushArgument(mb, q, getArg(p, n)); q->retc++;
- q= pushNil(mb, q, getArgType(mb, p, n));
- }
-
for (i = 1; i < mc->stop - 1; i++) {
q = mc->stmt[i];
if( q->token == ENDsymbol)
@@ -301,6 +293,8 @@
getArg(ns[k], n) = nv[getArg(q, n)];
if (q->barrier == RETURNsymbol || q->barrier == YIELDsymbol) {
+ for(n=0; n<q->retc; n++)
+ clrVarFixed(mb,getArg(ns[k],n)); /* for typing
*/
setModuleId(ns[k],NULL);
setFunctionId(ns[k],NULL);
ns[k]->barrier = 0;
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins