Update of /cvsroot/monetdb/sql/src/backends/monet5
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv32615
Modified Files:
sql_gencode.mx sql_optimizer.mx
Log Message:
Generate a dummy return for all functions.
U sql_gencode.mx
Index: sql_gencode.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/backends/monet5/sql_gencode.mx,v
retrieving revision 1.284
retrieving revision 1.285
diff -u -d -r1.284 -r1.285
--- sql_gencode.mx 9 Aug 2008 16:52:52 -0000 1.284
+++ sql_gencode.mx 17 Aug 2008 11:11:22 -0000 1.285
@@ -44,7 +44,6 @@
#include <sql_mvc.h>
#include <mal_function.h>
-sql5_export int backend_dumpstmt(backend *be, MalBlkPtr mb, stmt *s);
sql5_export Symbol backend_dumpproc(backend *be, Client c, cq *q, stmt *s);
sql5_export void backend_callinline(backend *be, Client c, stmt *s);
sql5_export void backend_call(backend *be, Client c, cq *q);
@@ -1879,17 +1878,23 @@
return s->nr;
}
-int backend_dumpstmt(backend *be, MalBlkPtr mb, stmt *s)
+static void backend_dumpstmt(backend *be, MalBlkPtr mb, stmt *s)
{
int nr = _dumpstmt(be, mb, s);
mvc *c = be->mvc;
+ InstrPtr q;
if (c->cache && (c->type == Q_SCHEMA || c->type == Q_TRANS)) {
- InstrPtr q = newStmt2(mb, sqlRef, exportOperationRef);
+ q = newStmt2(mb, sqlRef, exportOperationRef);
q = pushStr(mb, q, ""); /* warning */
- return getDestVar(q);
}
- return nr;
+ /* generate a dummy return assignment for functions */
+ if ( (nr= getArgType(mb,getInstrPtr(mb,0),0)) != TYPE_void){
+ q = newAssignment(mb);
+ getArg(q,0) = getArg(getInstrPtr(mb,0),0);
+ q->barrier = RETURNsymbol;
+ }
+ pushEndInstruction(mb);
}
void
@@ -1927,7 +1932,6 @@
}
}
backend_dumpstmt(be, curBlk, s);
- pushEndInstruction(curBlk);
c->curprg->def = curBlk;
}
@@ -1991,7 +1995,6 @@
}
backend_dumpstmt(be, curBlk, s);
- pushEndInstruction(curBlk);
if (cq){
be->mvc->Toptimize = GDKusec();
@@ -2116,7 +2119,6 @@
}
backend_dumpstmt(be, curBlk, s);
stmt_destroy(s);
- pushEndInstruction(curBlk);
addQueryToCache(c);
if (backup)
c->curprg = backup;
U sql_optimizer.mx
Index: sql_optimizer.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/backends/monet5/sql_optimizer.mx,v
retrieving revision 1.191
retrieving revision 1.192
diff -u -d -r1.191 -r1.192
--- sql_optimizer.mx 12 Aug 2008 09:56:40 -0000 1.191
+++ sql_optimizer.mx 17 Aug 2008 11:11:25 -0000 1.192
@@ -455,7 +455,7 @@
"emptySet,"
/* "joinselect," */
/* "accessmode," not needed after patches to BKCappend */
- /*"mitosis,"*/
+ /* "mitosis,"*/
"aliases,"
/* "crack," */
/*"joinPath,"*/
@@ -466,7 +466,7 @@
"deadcode,"
/*"recycle,"*/
"reduce,"
- /* "garbageCollector," */
+ "garbageCollector,"
"dataflow,"
"multiplex";
static str minimalPlan=
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Monetdb-sql-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-sql-checkins