Lines Matching defs:len1

406         int len1 = runLen[i];
409 if (DEBUG) assert len1 > 0 && len2 > 0;
410 if (DEBUG) assert base1 + len1 == base2;
417 runLen[i] = len1 + len2;
428 int k = gallopRight((Comparable<Object>) a[base2], a, base1, len1, 0);
431 len1 -= k;
432 if (len1 == 0)
439 len2 = gallopLeft((Comparable<Object>) a[base1 + len1 - 1], a,
445 // Merge remaining runs, using tmp array with min(len1, len2) elements
446 if (len1 <= len2)
447 mergeLo(base1, len1, base2, len2);
449 mergeHi(base1, len1, base2, len2);
601 * (a[base1 + len1-1]) must be greater than all elements of the second run.
603 * For performance, this method should be called only when len1 <= len2;
604 * its twin, mergeHi should be called if len1 >= len2. (Either method
605 * may be called if len1 == len2.)
608 * @param len1 length of first run to be merged (must be > 0)
614 private void mergeLo(int base1, int len1, int base2, int len2) {
615 if (DEBUG) assert len1 > 0 && len2 > 0 && base1 + len1 == base2;
619 Object[] tmp = ensureCapacity(len1);
620 System.arraycopy(a, base1, tmp, 0, len1);
629 System.arraycopy(tmp, cursor1, a, dest, len1);
632 if (len1 == 1) {
649 if (DEBUG) assert len1 > 1 && len2 > 0;
660 if (--len1 == 1)
671 if (DEBUG) assert len1 > 1 && len2 > 0;
672 count1 = gallopRight((Comparable) a[cursor2], tmp, cursor1, len1, 0);
677 len1 -= count1;
678 if (len1 <= 1) // len1 == 1 || len1 == 0
695 if (--len1 == 1)
705 if (len1 == 1) {
709 } else if (len1 == 0) {
714 if (DEBUG) assert len1 > 1;
715 System.arraycopy(tmp, cursor1, a, dest, len1);
721 * len1 >= len2; mergeLo should be called if len1 <= len2. (Either method
722 * may be called if len1 == len2.)
725 * @param len1 length of first run to be merged (must be > 0)
731 private void mergeHi(int base1, int len1, int base2, int len2) {
732 if (DEBUG) assert len1 > 0 && len2 > 0 && base1 + len1 == base2;
739 int cursor1 = base1 + len1 - 1; // Indexes into a
745 if (--len1 == 0) {
750 dest -= len1;
751 cursor1 -= len1;
752 System.arraycopy(a, cursor1 + 1, a, dest + 1, len1);
768 if (DEBUG) assert len1 > 0 && len2 > 1;
773 if (--len1 == 0)
790 if (DEBUG) assert len1 > 0 && len2 > 1;
791 count1 = len1 - gallopRight((Comparable) tmp[cursor2], a, base1, len1, len1 - 1);
795 len1 -= count1;
797 if (len1 == 0)
814 if (--len1 == 0)
825 if (DEBUG) assert len1 > 0;
826 dest -= len1;
827 cursor1 -= len1;
828 System.arraycopy(a, cursor1 + 1, a, dest + 1, len1);
834 if (DEBUG) assert len1 == 0;