diff options
author | root <root> | 2008-05-07 14:45:17 +0000 |
---|---|---|
committer | root <root> | 2008-05-07 14:45:17 +0000 |
commit | cd7d60e294c5402f8dc10e46dcff788eaa280d7e (patch) | |
tree | a815ac64a42bd562adbc1542de0b82b919ce48c5 /ev.c | |
parent | fc65001c25708f44ec3d7439712664e4ffa89a32 (diff) |
*** empty log message ***
Diffstat (limited to 'ev.c')
-rw-r--r-- | ev.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -810,6 +810,7 @@ downheap (WT *heap, int N, int k) // find minimum child if (expect_true (pos +3 < E)) { + /* fast path */ (minpos = pos + 0), (minat = (*minpos)->at); if (pos [1]->at < minat) (minpos = pos + 1), (minat = (*minpos)->at); if (pos [2]->at < minat) (minpos = pos + 2), (minat = (*minpos)->at); @@ -817,9 +818,9 @@ downheap (WT *heap, int N, int k) } else { + /* slow path */ if (pos >= E) break; - (minpos = pos + 0), (minat = (*minpos)->at); if (pos + 1 < E && pos [1]->at < minat) (minpos = pos + 1), (minat = (*minpos)->at); if (pos + 2 < E && pos [2]->at < minat) (minpos = pos + 2), (minat = (*minpos)->at); |