|
From: Andre R. <and...@us...> - 2004-12-17 15:11:35
|
Update of /cvsroot/frontierkernel/Frontier/Common/source In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26486/Common/source Modified Files: Tag: New_Tables_Experiment-branch langhash.c Log Message: In hashcomparekinds, reordered comparisons for performance. Index: langhash.c =================================================================== RCS file: /cvsroot/frontierkernel/Frontier/Common/source/langhash.c,v retrieving revision 1.4.2.25 retrieving revision 1.4.2.26 diff -C2 -d -r1.4.2.25 -r1.4.2.26 *** langhash.c 17 Dec 2004 13:14:59 -0000 1.4.2.25 --- langhash.c 17 Dec 2004 15:11:23 -0000 1.4.2.26 *************** *** 1466,1469 **** --- 1466,1471 ---- 2004-12-04 aradke: moved from tablecompare.c, changed defintion to be compatible with qsort + + 2004-12-17 aradke: reordered comparisons for performance */ *************** *** 1479,1493 **** t2 = val2.valuetype; ! if ((t1 == externalvaluetype) && (t2 == externalvaluetype)) { ! ! register hdlexternalhandle h1 = (hdlexternalhandle) val1.data.externalvalue; ! register hdlexternalhandle h2 = (hdlexternalhandle) val2.data.externalvalue; ! register tyexternalid id1 = (tyexternalid) (**h1).id; ! register tyexternalid id2 = (tyexternalid) (**h2).id; ! ! if (id1 == id2) ! return (hashcomparenames (hnode1, hnode2)); ! return (langexternalcomparetypes (id1, id2)); } --- 1481,1498 ---- t2 = val2.valuetype; ! if (t1 == t2) { ! ! if (t1 == externalvaluetype) { /*implies t2 == externalvaluetype*/ ! register hdlexternalhandle h1 = (hdlexternalhandle) val1.data.externalvalue; ! register hdlexternalhandle h2 = (hdlexternalhandle) val2.data.externalvalue; ! register tyexternalid id1 = (tyexternalid) (**h1).id; ! register tyexternalid id2 = (tyexternalid) (**h2).id; ! ! if (id1 != id2) ! return (langexternalcomparetypes (id1, id2)); ! } ! ! return (hashcomparenames (hnode1, hnode2)); } *************** *** 1498,1504 **** return (-1); - if (t1 == t2) - return (hashcomparenames (hnode1, hnode2)); - return (sgn (t1 - t2)); } /*hashcomparekinds*/ --- 1503,1506 ---- |