Lines Matching refs:doacross
269 struct gomp_doacross_work_share *doacross; in gomp_doacross_init() local
316 doacross = gomp_malloc (sizeof (*doacross) + 63 + num_ents * elt_sz in gomp_doacross_init()
318 doacross->chunk_size = chunk_size; in gomp_doacross_init()
319 doacross->elt_sz = elt_sz; in gomp_doacross_init()
320 doacross->ncounts = ncounts; in gomp_doacross_init()
321 doacross->flattened = false; in gomp_doacross_init()
322 doacross->array = (unsigned char *) in gomp_doacross_init()
323 ((((uintptr_t) (doacross + 1)) + 63 + shift_sz) in gomp_doacross_init()
328 doacross->flattened = true; in gomp_doacross_init()
331 doacross->shift_counts[i - 1] = shift_count; in gomp_doacross_init()
335 *(unsigned long *) (doacross->array + ent * elt_sz) = 0; in gomp_doacross_init()
339 memset (doacross->array + ent * elt_sz, '\0', in gomp_doacross_init()
345 doacross->boundary = t * (q + 1); in gomp_doacross_init()
346 doacross->q = q; in gomp_doacross_init()
347 doacross->t = t; in gomp_doacross_init()
349 ws->doacross = doacross; in gomp_doacross_init()
359 struct gomp_doacross_work_share *doacross = ws->doacross; in GOMP_doacross_post() local
363 if (__builtin_expect (doacross == NULL, 0)) in GOMP_doacross_post()
374 ent = counts[0] / doacross->chunk_size; in GOMP_doacross_post()
375 unsigned long *array = (unsigned long *) (doacross->array in GOMP_doacross_post()
376 + ent * doacross->elt_sz); in GOMP_doacross_post()
378 if (__builtin_expect (doacross->flattened, 1)) in GOMP_doacross_post()
381 = (unsigned long) counts[0] << doacross->shift_counts[0]; in GOMP_doacross_post()
383 for (i = 1; i < doacross->ncounts; i++) in GOMP_doacross_post()
385 << doacross->shift_counts[i]; in GOMP_doacross_post()
395 for (i = doacross->ncounts; i-- > 0; ) in GOMP_doacross_post()
409 struct gomp_doacross_work_share *doacross = ws->doacross; in GOMP_doacross_wait() local
414 if (__builtin_expect (doacross == NULL, 0)) in GOMP_doacross_wait()
424 if (first < doacross->boundary) in GOMP_doacross_wait()
425 ent = first / (doacross->q + 1); in GOMP_doacross_wait()
427 ent = (first - doacross->boundary) / doacross->q in GOMP_doacross_wait()
428 + doacross->t; in GOMP_doacross_wait()
436 ent = first / doacross->chunk_size; in GOMP_doacross_wait()
437 unsigned long *array = (unsigned long *) (doacross->array in GOMP_doacross_wait()
438 + ent * doacross->elt_sz); in GOMP_doacross_wait()
440 if (__builtin_expect (doacross->flattened, 1)) in GOMP_doacross_wait()
443 = (unsigned long) first << doacross->shift_counts[0]; in GOMP_doacross_wait()
447 for (i = 1; i < doacross->ncounts; i++) in GOMP_doacross_wait()
449 << doacross->shift_counts[i]; in GOMP_doacross_wait()
466 for (i = 0; i < doacross->ncounts; i++) in GOMP_doacross_wait()
473 i = doacross->ncounts; in GOMP_doacross_wait()
480 if (i == doacross->ncounts) in GOMP_doacross_wait()
498 struct gomp_doacross_work_share *doacross; in gomp_doacross_ull_init() local
550 doacross = gomp_malloc (sizeof (*doacross) + 63 + num_ents * elt_sz in gomp_doacross_ull_init()
552 doacross->chunk_size_ull = chunk_size; in gomp_doacross_ull_init()
553 doacross->elt_sz = elt_sz; in gomp_doacross_ull_init()
554 doacross->ncounts = ncounts; in gomp_doacross_ull_init()
555 doacross->flattened = false; in gomp_doacross_ull_init()
556 doacross->boundary = 0; in gomp_doacross_ull_init()
557 doacross->array = (unsigned char *) in gomp_doacross_ull_init()
558 ((((uintptr_t) (doacross + 1)) + 63 + shift_sz) in gomp_doacross_ull_init()
563 doacross->flattened = true; in gomp_doacross_ull_init()
566 doacross->shift_counts[i - 1] = shift_count; in gomp_doacross_ull_init()
570 *(unsigned long *) (doacross->array + ent * elt_sz) = 0; in gomp_doacross_ull_init()
574 memset (doacross->array + ent * elt_sz, '\0', in gomp_doacross_ull_init()
580 doacross->boundary_ull = t * (q + 1); in gomp_doacross_ull_init()
581 doacross->q_ull = q; in gomp_doacross_ull_init()
582 doacross->t = t; in gomp_doacross_ull_init()
584 ws->doacross = doacross; in gomp_doacross_ull_init()
594 struct gomp_doacross_work_share *doacross = ws->doacross; in GOMP_doacross_ull_post() local
598 if (__builtin_expect (doacross == NULL, 0)) in GOMP_doacross_ull_post()
609 ent = counts[0] / doacross->chunk_size_ull; in GOMP_doacross_ull_post()
611 if (__builtin_expect (doacross->flattened, 1)) in GOMP_doacross_ull_post()
613 unsigned long *array = (unsigned long *) (doacross->array in GOMP_doacross_ull_post()
614 + ent * doacross->elt_sz); in GOMP_doacross_ull_post()
616 = counts[0] << doacross->shift_counts[0]; in GOMP_doacross_ull_post()
618 for (i = 1; i < doacross->ncounts; i++) in GOMP_doacross_ull_post()
619 flattened |= counts[i] << doacross->shift_counts[i]; in GOMP_doacross_ull_post()
631 gomp_ull *array = (gomp_ull *) (doacross->array in GOMP_doacross_ull_post()
632 + ent * doacross->elt_sz); in GOMP_doacross_ull_post()
634 for (i = doacross->ncounts; i-- > 0; ) in GOMP_doacross_ull_post()
642 unsigned long *array = (unsigned long *) (doacross->array in GOMP_doacross_ull_post()
643 + ent * doacross->elt_sz); in GOMP_doacross_ull_post()
645 for (i = doacross->ncounts; i-- > 0; ) in GOMP_doacross_ull_post()
665 struct gomp_doacross_work_share *doacross = ws->doacross; in GOMP_doacross_ull_wait() local
670 if (__builtin_expect (doacross == NULL, 0)) in GOMP_doacross_ull_wait()
680 if (first < doacross->boundary_ull) in GOMP_doacross_ull_wait()
681 ent = first / (doacross->q_ull + 1); in GOMP_doacross_ull_wait()
683 ent = (first - doacross->boundary_ull) / doacross->q_ull in GOMP_doacross_ull_wait()
684 + doacross->t; in GOMP_doacross_ull_wait()
692 ent = first / doacross->chunk_size_ull; in GOMP_doacross_ull_wait()
694 if (__builtin_expect (doacross->flattened, 1)) in GOMP_doacross_ull_wait()
696 unsigned long *array = (unsigned long *) (doacross->array in GOMP_doacross_ull_wait()
697 + ent * doacross->elt_sz); in GOMP_doacross_ull_wait()
698 gomp_ull flattened = first << doacross->shift_counts[0]; in GOMP_doacross_ull_wait()
702 for (i = 1; i < doacross->ncounts; i++) in GOMP_doacross_ull_wait()
704 << doacross->shift_counts[i]; in GOMP_doacross_ull_wait()
720 gomp_ull *array = (gomp_ull *) (doacross->array in GOMP_doacross_ull_wait()
721 + ent * doacross->elt_sz); in GOMP_doacross_ull_wait()
725 for (i = 0; i < doacross->ncounts; i++) in GOMP_doacross_ull_wait()
732 i = doacross->ncounts; in GOMP_doacross_ull_wait()
739 if (i == doacross->ncounts) in GOMP_doacross_ull_wait()
747 unsigned long *array = (unsigned long *) (doacross->array in GOMP_doacross_ull_wait()
748 + ent * doacross->elt_sz); in GOMP_doacross_ull_wait()
752 for (i = 0; i < doacross->ncounts; i++) in GOMP_doacross_ull_wait()
762 i = doacross->ncounts; in GOMP_doacross_ull_wait()
771 i = doacross->ncounts; in GOMP_doacross_ull_wait()
778 if (i == doacross->ncounts) in GOMP_doacross_ull_wait()