Lines Matching refs:cmp
134 …rCode PetscGallopSearchLeft_Private(const char *arr, size_t size, CompFunc cmp, PetscCtx ctx, Pets… in PetscGallopSearchLeft_Private() argument
141 if ((*cmp)(x, arr + r * size, ctx) >= 0) { in PetscGallopSearchLeft_Private()
145 …if ((*cmp)(x, (arr) + l * size, ctx) < 0 || PetscUnlikely(!(r - l))) PetscFunctionReturn(PETSC_SUC… in PetscGallopSearchLeft_Private()
151 if ((*cmp)(x, (arr) + cur * size, ctx) < 0) break; in PetscGallopSearchLeft_Private()
159 if ((*cmp)(x, (arr) + mid * size, ctx) < 0) { in PetscGallopSearchLeft_Private()
171 …Code PetscGallopSearchRight_Private(const char *arr, size_t size, CompFunc cmp, PetscCtx ctx, Pets… in PetscGallopSearchRight_Private() argument
178 if ((*cmp)(x, arr + l * size, ctx) <= 0) { in PetscGallopSearchRight_Private()
182 …if ((*cmp)(x, (arr) + r * size, ctx) > 0 || PetscUnlikely(!(r - l))) PetscFunctionReturn(PETSC_SUC… in PetscGallopSearchRight_Private()
188 if ((*cmp)(x, (arr) + cur * size, ctx) > 0) break; in PetscGallopSearchRight_Private()
196 if ((*cmp)(x, (arr) + mid * size, ctx) > 0) { in PetscGallopSearchRight_Private()
209 …e PetscTimSortMergeLo_Private(char *arr, char *tarr, size_t size, CompFunc cmp, PetscCtx ctx, Pets… in PetscTimSortMergeLo_Private() argument
217 if ((*cmp)(tarr + (i * size), arr + (j * size), ctx) < 0) { in PetscTimSortMergeLo_Private()
226 …PetscCall(PetscGallopSearchLeft_Private(tarr, size, cmp, ctx, i, llen - 1, arr + (j * size), &l1)); in PetscTimSortMergeLo_Private()
232 … PetscCall(PetscGallopSearchLeft_Private(arr, size, cmp, ctx, j, right, tarr + (i * size), &l2)); in PetscTimSortMergeLo_Private()
250 … PetscCall(PetscGallopSearchLeft_Private(arr, size, cmp, ctx, j, right, tarr + (i * size), &l2)); in PetscTimSortMergeLo_Private()
256 …PetscCall(PetscGallopSearchLeft_Private(tarr, size, cmp, ctx, i, llen - 1, arr + (j * size), &l1)); in PetscTimSortMergeLo_Private()
271 …char *atarr, size_t asize, char *barr, char *btarr, size_t bsize, CompFunc cmp, PetscCtx ctx, Pets… in PetscTimSortMergeLoWithArray_Private() argument
279 if ((*cmp)(atarr + (i * asize), arr + (j * asize), ctx) < 0) { in PetscTimSortMergeLoWithArray_Private()
288 …PetscCall(PetscGallopSearchLeft_Private(atarr, asize, cmp, ctx, i, llen - 1, arr + (j * asize), &l… in PetscTimSortMergeLoWithArray_Private()
294 …PetscCall(PetscGallopSearchLeft_Private(arr, asize, cmp, ctx, j, right, atarr + (i * asize), &l2)); in PetscTimSortMergeLoWithArray_Private()
312 …PetscCall(PetscGallopSearchLeft_Private(arr, asize, cmp, ctx, j, right, atarr + (i * asize), &l2)); in PetscTimSortMergeLoWithArray_Private()
318 …PetscCall(PetscGallopSearchLeft_Private(atarr, asize, cmp, ctx, i, llen - 1, arr + (j * asize), &l… in PetscTimSortMergeLoWithArray_Private()
336 …e PetscTimSortMergeHi_Private(char *arr, char *tarr, size_t size, CompFunc cmp, PetscCtx ctx, Pets… in PetscTimSortMergeHi_Private() argument
344 if ((*cmp)((tarr) + i * size, (arr) + j * size, ctx) > 0) { in PetscTimSortMergeHi_Private()
353 … PetscCall(PetscGallopSearchRight_Private(tarr, size, cmp, ctx, 0, i, (arr) + j * size, &l1)); in PetscTimSortMergeHi_Private()
359 … PetscCall(PetscGallopSearchRight_Private(arr, size, cmp, ctx, left, j, (tarr) + i * size, &l2)); in PetscTimSortMergeHi_Private()
377 … PetscCall(PetscGallopSearchRight_Private(arr, size, cmp, ctx, left, j, (tarr) + i * size, &l2)); in PetscTimSortMergeHi_Private()
383 … PetscCall(PetscGallopSearchRight_Private(tarr, size, cmp, ctx, 0, i, (arr) + j * size, &l1)); in PetscTimSortMergeHi_Private()
398 …char *atarr, size_t asize, char *barr, char *btarr, size_t bsize, CompFunc cmp, PetscCtx ctx, Pets… in PetscTimSortMergeHiWithArray_Private() argument
406 if ((*cmp)((atarr) + i * asize, (arr) + j * asize, ctx) > 0) { in PetscTimSortMergeHiWithArray_Private()
415 … PetscCall(PetscGallopSearchRight_Private(atarr, asize, cmp, ctx, 0, i, (arr) + j * asize, &l1)); in PetscTimSortMergeHiWithArray_Private()
421 …PetscCall(PetscGallopSearchRight_Private(arr, asize, cmp, ctx, left, j, (atarr) + i * asize, &l2)); in PetscTimSortMergeHiWithArray_Private()
439 …PetscCall(PetscGallopSearchRight_Private(arr, asize, cmp, ctx, left, j, (atarr) + i * asize, &l2)); in PetscTimSortMergeHiWithArray_Private()
445 … PetscCall(PetscGallopSearchRight_Private(atarr, asize, cmp, ctx, 0, i, (arr) + j * asize, &l1)); in PetscTimSortMergeHiWithArray_Private()
462 …de PetscInsertionSort_Private(char *arr, char *tarr, size_t size, CompFunc cmp, PetscCtx ctx, Pets… in PetscInsertionSort_Private() argument
470 while ((j >= left) && ((*cmp)(tarr, (arr) + j * size, ctx) < 0)) { in PetscInsertionSort_Private()
479 …char *atarr, size_t asize, char *barr, char *btarr, size_t bsize, CompFunc cmp, PetscCtx ctx, Pets… in PetscInsertionSortWithArray_Private() argument
487 while ((j >= left) && ((*cmp)(atarr, arr + (j * asize), ctx) < 0)) { in PetscInsertionSortWithArray_Private()
497 …scBinaryInsertionSort_Private(char *arr, char *tarr, size_t size, CompFunc cmp, PetscCtx ctx, Pets… in PetscBinaryInsertionSort_Private() argument
507 if ((*cmp)(tarr, arr + (m * size), ctx) < 0) { in PetscBinaryInsertionSort_Private()
519 …char *atarr, size_t asize, char *barr, char *btarr, size_t bsize, CompFunc cmp, PetscCtx ctx, Pets… in PetscBinaryInsertionSortWithArray_Private() argument
529 if ((*cmp)(atarr, arr + (m * asize), ctx) < 0) { in PetscBinaryInsertionSortWithArray_Private()
570 static inline PetscErrorCode PetscTimSortForceCollapse_Private(char *arr, size_t size, CompFunc cmp… in PetscTimSortForceCollapse_Private() argument
575 …if ((*cmp)(arr + (stack[stacksize].start - 1) * size, arr + (stack[stacksize].start) * size, ctx) … in PetscTimSortForceCollapse_Private()
578 …PetscCall(PetscGallopSearchLeft_Private(arr, size, cmp, ctx, stack[stacksize - 1].start, stack[sta… in PetscTimSortForceCollapse_Private()
580 …PetscCall(PetscGallopSearchRight_Private(arr, size, cmp, ctx, stack[stacksize].start, stack[stacks… in PetscTimSortForceCollapse_Private()
583 PetscCall(PetscTimSortMergeLo_Private(arr, buff->ptr, size, cmp, ctx, l, m, r)); in PetscTimSortForceCollapse_Private()
586 PetscCall(PetscTimSortMergeHi_Private(arr, buff->ptr, size, cmp, ctx, l, m, r)); in PetscTimSortForceCollapse_Private()
595 …hArray_Private(char *arr, size_t asize, char *barr, size_t bsize, CompFunc cmp, PetscCtx ctx, Pets… in PetscTimSortForceCollapseWithArray_Private() argument
600 …if ((*cmp)(arr + (stack[stacksize].start - 1) * asize, arr + (stack[stacksize].start) * asize, ctx… in PetscTimSortForceCollapseWithArray_Private()
603 …PetscCall(PetscGallopSearchLeft_Private(arr, asize, cmp, ctx, stack[stacksize - 1].start, stack[st… in PetscTimSortForceCollapseWithArray_Private()
605 …PetscCall(PetscGallopSearchRight_Private(arr, asize, cmp, ctx, stack[stacksize].start, stack[stack… in PetscTimSortForceCollapseWithArray_Private()
609 …mSortMergeLoWithArray_Private(arr, abuff->ptr, asize, barr, bbuff->ptr, bsize, cmp, ctx, l, m, r)); in PetscTimSortForceCollapseWithArray_Private()
613 …mSortMergeHiWithArray_Private(arr, abuff->ptr, asize, barr, bbuff->ptr, bsize, cmp, ctx, l, m, r)); in PetscTimSortForceCollapseWithArray_Private()
622 static inline PetscErrorCode PetscTimSortMergeCollapse_Private(char *arr, size_t size, CompFunc cmp… in PetscTimSortMergeCollapse_Private() argument
634 if ((*cmp)(arr + (stack[i].start - 1) * size, arr + (stack[i].start) * size, ctx) > 0) { in PetscTimSortMergeCollapse_Private()
637 …PetscCall(PetscGallopSearchLeft_Private(arr, size, cmp, ctx, stack[i - 1].start, stack[i].start - … in PetscTimSortMergeCollapse_Private()
639 …PetscCall(PetscGallopSearchRight_Private(arr, size, cmp, ctx, stack[i].start, stack[i].start + sta… in PetscTimSortMergeCollapse_Private()
642 PetscCall(PetscTimSortMergeLo_Private(arr, buff->ptr, size, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapse_Private()
645 PetscCall(PetscTimSortMergeHi_Private(arr, buff->ptr, size, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapse_Private()
658 … if ((*cmp)(arr + (stack[i - 1].start - 1) * size, arr + (stack[i - 1].start) * size, ctx) > 0) { in PetscTimSortMergeCollapse_Private()
661 …PetscCall(PetscGallopSearchLeft_Private(arr, size, cmp, ctx, stack[i - 2].start, stack[i - 1].star… in PetscTimSortMergeCollapse_Private()
663 …PetscCall(PetscGallopSearchRight_Private(arr, size, cmp, ctx, stack[i - 1].start, stack[i - 1].sta… in PetscTimSortMergeCollapse_Private()
666 PetscCall(PetscTimSortMergeLo_Private(arr, buff->ptr, size, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapse_Private()
669 PetscCall(PetscTimSortMergeHi_Private(arr, buff->ptr, size, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapse_Private()
681 if ((*cmp)(arr + (stack[i].start - 1) * size, arr + (stack[i].start) * size, ctx) > 0) { in PetscTimSortMergeCollapse_Private()
684 …PetscCall(PetscGallopSearchLeft_Private(arr, size, cmp, ctx, stack[i - 1].start, stack[i].start - … in PetscTimSortMergeCollapse_Private()
686 …PetscCall(PetscGallopSearchRight_Private(arr, size, cmp, ctx, stack[i].start, stack[i].start + sta… in PetscTimSortMergeCollapse_Private()
689 PetscCall(PetscTimSortMergeLo_Private(arr, buff->ptr, size, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapse_Private()
692 PetscCall(PetscTimSortMergeHi_Private(arr, buff->ptr, size, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapse_Private()
710 …hArray_Private(char *arr, size_t asize, char *barr, size_t bsize, CompFunc cmp, PetscCtx ctx, Pets… in PetscTimSortMergeCollapseWithArray_Private() argument
722 if ((*cmp)(arr + (stack[i].start - 1) * asize, arr + (stack[i].start) * asize, ctx) > 0) { in PetscTimSortMergeCollapseWithArray_Private()
725 …PetscCall(PetscGallopSearchLeft_Private(arr, asize, cmp, ctx, stack[i - 1].start, stack[i].start -… in PetscTimSortMergeCollapseWithArray_Private()
727 …PetscCall(PetscGallopSearchRight_Private(arr, asize, cmp, ctx, stack[i].start, stack[i].start + st… in PetscTimSortMergeCollapseWithArray_Private()
731 …mSortMergeLoWithArray_Private(arr, abuff->ptr, asize, barr, bbuff->ptr, bsize, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapseWithArray_Private()
735 …mSortMergeHiWithArray_Private(arr, abuff->ptr, asize, barr, bbuff->ptr, bsize, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapseWithArray_Private()
748 … if ((*cmp)(arr + (stack[i - 1].start - 1) * asize, arr + (stack[i - 1].start) * asize, ctx) > 0) { in PetscTimSortMergeCollapseWithArray_Private()
751 …PetscCall(PetscGallopSearchLeft_Private(arr, asize, cmp, ctx, stack[i - 2].start, stack[i - 1].sta… in PetscTimSortMergeCollapseWithArray_Private()
753 …PetscCall(PetscGallopSearchRight_Private(arr, asize, cmp, ctx, stack[i - 1].start, stack[i - 1].st… in PetscTimSortMergeCollapseWithArray_Private()
757 …mSortMergeLoWithArray_Private(arr, abuff->ptr, asize, barr, bbuff->ptr, bsize, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapseWithArray_Private()
761 …mSortMergeHiWithArray_Private(arr, abuff->ptr, asize, barr, bbuff->ptr, bsize, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapseWithArray_Private()
773 if ((*cmp)(arr + (stack[i].start - 1) * asize, arr + (stack[i].start) * asize, ctx) > 0) { in PetscTimSortMergeCollapseWithArray_Private()
776 …PetscCall(PetscGallopSearchLeft_Private(arr, asize, cmp, ctx, stack[i - 1].start, stack[i].start -… in PetscTimSortMergeCollapseWithArray_Private()
778 …PetscCall(PetscGallopSearchRight_Private(arr, asize, cmp, ctx, stack[i].start, stack[i].start + st… in PetscTimSortMergeCollapseWithArray_Private()
782 …mSortMergeLoWithArray_Private(arr, abuff->ptr, asize, barr, bbuff->ptr, bsize, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapseWithArray_Private()
786 …mSortMergeHiWithArray_Private(arr, abuff->ptr, asize, barr, bbuff->ptr, bsize, cmp, ctx, l, m, r)); in PetscTimSortMergeCollapseWithArray_Private()
807 … PetscTimSortBuildRun_Private(char *arr, char *tarr, size_t size, CompFunc cmp, PetscCtx ctx, Pets… in PetscTimSortBuildRun_Private() argument
818 if ((*cmp)((arr) + (ri + 1) * size, (arr) + ri * size, ctx) < 0) { in PetscTimSortBuildRun_Private()
821 if ((*cmp)((arr) + (ri + 1) * size, (arr) + ri * size, ctx) >= 0) break; in PetscTimSortBuildRun_Private()
831 if ((*cmp)((arr) + (ri + 1) * size, (arr) + ri * size, ctx) < 0) break; in PetscTimSortBuildRun_Private()
840 PetscCall(PetscInsertionSort_Private(arr, tarr, size, cmp, ctx, runstart, ri, re)); in PetscTimSortBuildRun_Private()
842 PetscCall(PetscBinaryInsertionSort_Private(arr, tarr, size, cmp, ctx, runstart, ri, re)); in PetscTimSortBuildRun_Private()
849 …char *atarr, size_t asize, char *barr, char *btarr, size_t bsize, CompFunc cmp, PetscCtx ctx, Pets… in PetscTimSortBuildRunWithArray_Private() argument
860 if ((*cmp)((arr) + (ri + 1) * asize, arr + (ri * asize), ctx) < 0) { in PetscTimSortBuildRunWithArray_Private()
863 if ((*cmp)((arr) + (ri + 1) * asize, (arr) + ri * asize, ctx) >= 0) break; in PetscTimSortBuildRunWithArray_Private()
873 if ((*cmp)((arr) + (ri + 1) * asize, (arr) + ri * asize, ctx) < 0) break; in PetscTimSortBuildRunWithArray_Private()
882 …PetscCall(PetscInsertionSortWithArray_Private(arr, atarr, asize, barr, btarr, bsize, cmp, ctx, run… in PetscTimSortBuildRunWithArray_Private()
884 …inaryInsertionSortWithArray_Private(arr, atarr, asize, barr, btarr, bsize, cmp, ctx, runstart, ri,… in PetscTimSortBuildRunWithArray_Private()
966 PetscErrorCode PetscTimSort(PetscInt n, void *arr, size_t size, int (*cmp)(const void *, const void… in PetscTimSort()
997 …PetscCall(PetscTimSortBuildRun_Private((char *)arr, buff.ptr, size, cmp, ctx, n, minrun, runstart,… in PetscTimSort()
1000 …PetscCall(PetscTimSortMergeCollapse_Private((char *)arr, size, cmp, ctx, &buff, runstack, &stacksi… in PetscTimSort()
1006 …PetscCall(PetscTimSortForceCollapse_Private((char *)arr, size, cmp, ctx, &buff, runstack, stacksiz… in PetscTimSort()
1091 …Array(PetscInt n, void *arr, size_t asize, void *barr, size_t bsize, int (*cmp)(const void *, cons… in PetscTimSortWithArray()
1124 …ray_Private((char *)arr, abuff.ptr, asize, (char *)barr, bbuff.ptr, bsize, cmp, ctx, n, minrun, ru… in PetscTimSortWithArray()
1127 …ortMergeCollapseWithArray_Private((char *)arr, asize, (char *)barr, bsize, cmp, ctx, &abuff, &bbuf… in PetscTimSortWithArray()
1133 …PetscCall(PetscTimSortForceCollapseWithArray_Private((char *)arr, asize, (char *)barr, bsize, cmp,… in PetscTimSortWithArray()