I don't think I understand the reason for this change.

The current version keeps, during partitioning, the elements in four groups:

| lt pivot | eq pivot | unchecked | gt pivot |

which means that after partitioning we have the three groups:

| lt pivot | eq pivot | gt pivot |
 ^          ^          ^ starts at "high_start"
 ^          ^ starts at "low_end"
 ^ starts at "from"

The pivot starts out in the "eq pivot" group, and stays there during
partitioning.
We recurse only on the ones that are less than and greater than. I don't see how
we can recurse on less than that.


http://codereview.chromium.org/1591038/diff/1/2
File src/array.js (right):

http://codereview.chromium.org/1591038/diff/1/2#newcode678
src/array.js:678: a[high_start] = pivot;
This partitions into the following groups:
  | lt | eq | unchecked | gt | pivot |
Correct?

http://codereview.chromium.org/1591038/show

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to