Changeset: 1a1feac52dc6 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1a1feac52dc6
Modified Files:
monetdb5/optimizer/opt_recycler.mx
Branch: Jul2012
Log Message:
OPTrecycleImplementation: uncrustify
diffs (truncated from 389 to 300 lines):
diff --git a/monetdb5/optimizer/opt_recycler.mx
b/monetdb5/optimizer/opt_recycler.mx
--- a/monetdb5/optimizer/opt_recycler.mx
+++ b/monetdb5/optimizer/opt_recycler.mx
@@ -131,154 +131,156 @@ OPTrecycleImplementation(Client cntxt, M
(void) cntxt;
(void) stk;
- limit= mb->stop;
+ limit = mb->stop;
old = mb->stmt;
- for (i = 1; i<limit; i++) {
+ for (i = 1; i < limit; i++) {
p = old[i];
- if (getModuleId(p)==sqlRef &&
- (getFunctionId(p) == affectedRowsRef ||
- getFunctionId(p) == exportOperationRef ||
- getFunctionId(p) == appendRef ||
- getFunctionId(p) == updateRef ||
- getFunctionId(p) == deleteRef) )
+ if (getModuleId(p) == sqlRef &&
+ (getFunctionId(p) == affectedRowsRef ||
+ getFunctionId(p) == exportOperationRef ||
+ getFunctionId(p) == appendRef ||
+ getFunctionId(p) == updateRef ||
+ getFunctionId(p) == deleteRef))
updstmt = 1;
}
span = setLifespan(mb);
- if ( span == NULL)
+ if (span == NULL)
return 0;
/* watch out, newly created instructions may introduce new variables */
- recycled= GDKzalloc(sizeof(char)*mb->vtop * 2);
- if ( recycled == NULL)
+ recycled = GDKzalloc(sizeof(char) * mb->vtop * 2);
+ if (recycled == NULL)
return 0;
- if ( newMalBlkStmt(mb, mb->ssize) < 0){
+ if (newMalBlkStmt(mb, mb->ssize) < 0) {
GDKfree(recycled);
return 0;
}
- pushInstruction(mb,old[0]);
+ pushInstruction(mb, old[0]);
mb->recid = recycleSeq++;
/* create a handle for recycler */
- (void) newFcnCall(mb,"recycle","prelude");
+ (void) newFcnCall(mb, "recycle", "prelude");
in = 1;
- for (i = 1; i<limit; i++) {
+ for (i = 1; i < limit; i++) {
p = old[i];
- if (hasSideEffects(p,TRUE) || isUpdateInstruction(p) ||
isUnsafeFunction(p)){
- if( getModuleId(p)== recycleRef ){ /*don't inline
recycle instr. */
+ if (hasSideEffects(p, TRUE) || isUpdateInstruction(p) ||
isUnsafeFunction(p)) {
+ if (getModuleId(p) == recycleRef) { /*don't inline
recycle instr. */
freeInstruction(p);
continue;
}
- pushInstruction(mb,p);
- /* update instructions are not recycled but
monitored*/
- if( isUpdateInstruction(p)){
+ pushInstruction(mb, p);
+ /* update instructions are not recycled but monitored*/
+ if (isUpdateInstruction(p)) {
if (getModuleId(p) == batRef &&
- (getArgType(mb,p,1)==TYPE_bat
- || isaBatType(getArgType(mb, p,1)))){
- recycled[getArg(p,1)]= 0;
- q= newFcnCall(mb,"recycle","reset");
- pushArgument(mb,q, getArg(p,1));
+ (getArgType(mb, p, 1) == TYPE_bat
+ || isaBatType(getArgType(mb, p, 1)))) {
+ recycled[getArg(p, 1)] = 0;
+ q = newFcnCall(mb, "recycle", "reset");
+ pushArgument(mb, q, getArg(p, 1));
actions++;
}
- if (getModuleId(p) == sqlRef){
- if (getFunctionId(p) == appendRef ){
- if ( app_sc >= 0 )
+ if (getModuleId(p) == sqlRef) {
+ if (getFunctionId(p) == appendRef) {
+ if (app_sc >= 0)
continue;
- else app_sc = getArg(p,2);
+ else
+ app_sc = getArg(p, 2);
}
- VALset(&cst,TYPE_int,&delta);
+ VALset(&cst, TYPE_int, &delta);
c = defConstant(mb, TYPE_int, &cst);
- q = newFcnCall(mb,"recycle","reset");
- pushArgument(mb,q,c);
- pushArgument(mb,q, getArg(p,2));
- pushArgument(mb,q, getArg(p,3));
+ q = newFcnCall(mb, "recycle", "reset");
+ pushArgument(mb, q, c);
+ pushArgument(mb, q, getArg(p, 2));
+ pushArgument(mb, q, getArg(p, 3));
if (getFunctionId(p) == updateRef)
- pushArgument(mb,q, getArg(p,4));
+ pushArgument(mb, q, getArg(p,
4));
actions++;
}
}
/* take care of SQL catalog update instructions */
- if (getModuleId(p) == sqlRef && getFunctionId(p) ==
catalogRef ){
- tp = *(int*) getVarValue(mb,getArg(p,1));
+ if (getModuleId(p) == sqlRef && getFunctionId(p) ==
catalogRef) {
+ tp = *(int *) getVarValue(mb, getArg(p, 1));
if (tp == 22 || tp == 25) {
- delta = 2;
- VALset(&cst,TYPE_int,&delta);
+ delta = 2;
+ VALset(&cst, TYPE_int, &delta);
c = defConstant(mb, TYPE_int, &cst);
- q = newFcnCall(mb,"recycle","reset");
- pushArgument(mb,q,c);
- pushArgument(mb,q, getArg(p,2));
- if ( tp == 25 )
- pushArgument(mb,q, getArg(p,3));
+ q = newFcnCall(mb, "recycle", "reset");
+ pushArgument(mb, q, c);
+ pushArgument(mb, q, getArg(p, 2));
+ if (tp == 25)
+ pushArgument(mb, q, getArg(p,
3));
actions++;
}
}
continue;
}
- if( p->token == ENDsymbol || p->barrier == RETURNsymbol ){
- if ( in ){
- /* if ( updstmt && app_sc >= 0 ){
- q= newFcnCall(mb,"recycle","reset");
- pushArgument(mb,q, app_sc);
- pushArgument(mb,q, app_tbl);
+ if (p->token == ENDsymbol || p->barrier == RETURNsymbol) {
+ if (in) {
+ /*
+ if (updstmt && app_sc >= 0) {
+ q = newFcnCall(mb, "recycle", "reset");
+ pushArgument(mb, q, app_sc);
+ pushArgument(mb, q, app_tbl);
}
- */ (void) newFcnCall(mb,"recycle","epilogue");
+ */
+ (void) newFcnCall(mb, "recycle", "epilogue");
in = 0;
}
- pushInstruction(mb,p);
+ pushInstruction(mb, p);
continue;
- }
+ }
- if (p->barrier && p->token != CMDcall){
+ if (p->barrier && p->token != CMDcall) {
/* never save a barrier unless it is a command and
side-effect free */
- pushInstruction(mb,p);
+ pushInstruction(mb, p);
continue;
}
/* don't change instructions in update statements */
- if( updstmt){
- pushInstruction(mb,p);
+ if (updstmt) {
+ pushInstruction(mb, p);
continue;
- }
+ }
/* skip simple assignments */
- if( p->token == ASSIGNsymbol){
- pushInstruction(mb,p);
+ if (p->token == ASSIGNsymbol) {
+ pushInstruction(mb, p);
continue;
- }
+ }
- if (getModuleId(p) == octopusRef &&
- ( getFunctionId(p) == bindRef || getFunctionId(p) ==
bindidxRef) ) {
- recycled[getArg(p,0)] = 1;
- p->recycle = recycleMaxInterest;
- marks++;
+ if (getModuleId(p) == octopusRef &&
+ (getFunctionId(p) == bindRef || getFunctionId(p) ==
bindidxRef)) {
+ recycled[getArg(p, 0)] = 1;
+ p->recycle = recycleMaxInterest;
+ marks++;
}
/* During base table recycling skip marking instructions other
than octopus.bind */
- if( baseTableMode ){
- pushInstruction(mb,p);
+ if (baseTableMode) {
+ pushInstruction(mb, p);
continue;
- }
+ }
- /* general rule: all arguments are constants or recycled,
- ignore C pointer arguments from mvc*/
+ /* general rule: all arguments are constants or recycled,
+ ignore C pointer arguments from mvc */
cnt = 0;
- for (j=p->retc; j<p->argc; j++)
- if( recycled[getArg(p,j)] || isVarConstant(mb,
getArg(p,j))
- || ignoreVar(mb, getArg(p,j)) )
+ for (j = p->retc; j < p->argc; j++)
+ if (recycled[getArg(p, j)] || isVarConstant(mb,
getArg(p, j))
+ || ignoreVar(mb, getArg(p, j)))
cnt++;
- if (cnt == p->argc-p->retc) {
- OPTDEBUGrecycle {
- mnstr_printf(cntxt->fdout,"#recycle instruction\n");
- printInstruction(cntxt->fdout,mb, 0, p,LIST_MAL_ALL);
- }
+ if (cnt == p->argc - p->retc) {
+ OPTDEBUGrecycle {
+ mnstr_printf(cntxt->fdout, "#recycle
instruction\n");
+ printInstruction(cntxt->fdout, mb, 0, p,
LIST_MAL_ALL);
+ }
marks++;
p->recycle = recycleMaxInterest; /* this instruction is
to be monitored */
- for (j= 0; j < p->retc; j++)
- if (getLastUpdate(span, getArg(p,j)) == i)
- recycled[getArg(p,j)] = 1;
+ for (j = 0; j < p->retc; j++)
+ if (getLastUpdate(span, getArg(p, j)) == i)
+ recycled[getArg(p, j)] = 1;
}
/*
- * @-
* The expected gain is largest if we can re-use selections
* on the base tables in SQL. These, however, are marked as
* uselect() calls, which only produce the oid head.
@@ -289,85 +291,85 @@ OPTrecycleImplementation(Client cntxt, M
*/
/* take care of semantic driven recyling */
/* for selections check the bat argument only
- the range is often template parameter*/
- if(( getFunctionId(p)== selectRef ||
- getFunctionId(p)== antiuselectRef ||
- getFunctionId(p)== likeselectRef ||
- getFunctionId(p)== likeRef ||
- getFunctionId(p)== thetaselectRef ) &&
- recycled[getArg(p,1)] ){
+ the range is often template parameter*/
+ if ((getFunctionId(p) == selectRef ||
+ getFunctionId(p) == antiuselectRef ||
+ getFunctionId(p) == likeselectRef ||
+ getFunctionId(p) == likeRef ||
+ getFunctionId(p) == thetaselectRef) &&
+ recycled[getArg(p, 1)])
+ {
p->recycle = recycleMaxInterest;
- marks ++;
- if (getLastUpdate(span, getArg(p,0)) == i)
- recycled[getArg(p,0)] = 1;
+ marks++;
+ if (getLastUpdate(span, getArg(p, 0)) == i)
+ recycled[getArg(p, 0)] = 1;
}
- if( ( getFunctionId(p) == uselectRef || getFunctionId(p) ==
thetauselectRef)
- && recycled[getArg(p,1)]) {
- if (!ATOMvarsized( getGDKType( getArgType(mb,p,2)))) {
+ if ((getFunctionId(p) == uselectRef || getFunctionId(p) ==
thetauselectRef)
+ && recycled[getArg(p, 1)])
+ {
+ if (!ATOMvarsized(getGDKType(getArgType(mb, p, 2)))) {
q = copyInstruction(p);
- getArg(q,0)= newTmpVariable(mb,TYPE_any);
- if ( getFunctionId(p) == uselectRef )
- setFunctionId(q, selectRef);
- else setFunctionId(q, thetaselectRef);
+ getArg(q, 0) = newTmpVariable(mb, TYPE_any);
+ if (getFunctionId(p) == uselectRef)
+ setFunctionId(q, selectRef);
+ else
+ setFunctionId(q, thetaselectRef);
q->recycle = recycleMaxInterest;
marks++;
- recycled[getArg(q,0)] = 1;
- pushInstruction(mb,q);
- getArg(p,1) = getArg(q,0);
- setFunctionId(p,projectRef);
+ recycled[getArg(q, 0)] = 1;
+ pushInstruction(mb, q);
+ getArg(p, 1) = getArg(q, 0);
+ setFunctionId(p, projectRef);
p->argc = 2;
}
p->recycle = recycleMaxInterest;
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list