Changeset: 63586a7b6583 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=63586a7b6583
Modified Files:
monetdb5/optimizer/opt_support.mx
Branch: default
Log Message:
Rehuffle for speed.
diffs (30 lines):
diff --git a/monetdb5/optimizer/opt_support.mx
b/monetdb5/optimizer/opt_support.mx
--- a/monetdb5/optimizer/opt_support.mx
+++ b/monetdb5/optimizer/opt_support.mx
@@ -879,6 +879,15 @@
int hasSameSignature(MalBlkPtr mb, InstrPtr p, InstrPtr q){
int i;
if( q->retc != p->retc || q->argc != p->argc) return FALSE;
+ /* actually also check their types */
+ for( i=0; i<p->argc; i++)
+ if (getArgType(mb,p,i) != getArgType(mb,q,i))
+ return FALSE;
+ if ( getFunctionId(q) == getFunctionId(p) &&
+ getModuleId(q) == getModuleId(p) &&
+ getFunctionId(q) != 0 &&
+ getModuleId(q) != 0)
+ return TRUE;
if( getFunctionId(q)==0 && getFunctionId(p)!=0 ) return FALSE;
if( getFunctionId(q)!=0 && getFunctionId(p)==0 ) return FALSE;
if( getFunctionId(q) && getFunctionId(p) &&
idcmp(getFunctionId(q),getFunctionId(p)) )
@@ -887,10 +896,6 @@
if( getModuleId(q)!=0 && getModuleId(p)==0 ) return FALSE;
if( getModuleId(q) && getModuleId(p) &&
idcmp(getModuleId(q),getModuleId(p)))
return FALSE;
- /* actually also check their types */
- for( i=0; i<p->argc; i++)
- if (getArgType(mb,p,i) != getArgType(mb,q,i))
- return FALSE;
return TRUE;
}
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list