Changeset: 4c584b865796 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4c584b865796 Modified Files: monetdb5/optimizer/opt_garbageCollector.c Branch: default Log Message:
Minor code upgrade diffs (64 lines): diff --git a/monetdb5/optimizer/opt_garbageCollector.c b/monetdb5/optimizer/opt_garbageCollector.c --- a/monetdb5/optimizer/opt_garbageCollector.c +++ b/monetdb5/optimizer/opt_garbageCollector.c @@ -32,7 +32,9 @@ OPTgarbageCollectorImplementation(Client char buf[1024]; lng usec = GDKusec(); str msg = MAL_SUCCEED; +#ifndef NDEBUG int *used; +#endif (void) pci; (void) stk; @@ -59,7 +61,9 @@ OPTgarbageCollectorImplementation(Client // Actual garbage collection stuff, just mark them for re-assessment vlimit = mb->vtop; +#ifndef NDEBUG used = (int *) GDKzalloc(vlimit * sizeof(int)); +#endif p = NULL; for (i = 0; i < limit; i++) { p = getInstrPtr(mb, i); @@ -67,13 +71,15 @@ OPTgarbageCollectorImplementation(Client p->typechk = TYPE_UNKNOWN; /* Set the program counter to ease profiling */ p->pc = i; - if ( i > 0 && getModuleId(p) != languageRef && getModuleId(p) != querylogRef && getModuleId(p) != sqlRef && !p->barrier) +#ifndef NDEBUG + if ( i > 1 && getModuleId(p) != languageRef && getModuleId(p) != querylogRef && getModuleId(p) != sqlRef && !p->barrier) for( j=0; j< p->retc; j++) used[getArg(p,j)] = i; if ( getModuleId(p) != languageRef && getFunctionId(p) != passRef){ for(j= p->retc ; j< p->argc; j++) used[getArg(p,j)] = 0; } +#endif if ( p->token == ENDsymbol) break; } @@ -83,21 +89,19 @@ OPTgarbageCollectorImplementation(Client GDKfree(used); throw(MAL, "optimizer.garbagecollector", SQLSTATE(42000) "Incorrect MAL plan encountered"); } +#ifndef NDEBUG /* Leave a message behind when we have created variables and not used them */ for(i=0; i< vlimit; i++) if( used[i]){ p = getInstrPtr(mb, used[i]); if( p){ -#ifdef NDEBUG - snprintf(buf,1024,"Unused variable %s", getVarName(mb, i)); -#else str msg = instruction2str(mb, NULL, p, LIST_MAL_ALL); snprintf(buf,1024,"Unused variable %s: %s", getVarName(mb, i), msg); GDKfree(msg); -#endif newComment(mb,buf); } } +#endif GDKfree(used); getInstrPtr(mb,0)->gc |= GARBAGECONTROL; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list