779 |
|
do { // emulate poll from old array, push to new array |
780 |
|
int index = b & oldMask; |
781 |
|
ForkJoinTask<?> x = (ForkJoinTask<?>) |
782 |
< |
QA.getVolatile(oldA, index); |
782 |
> |
QA.getAcquire(oldA, index); |
783 |
|
if (x != null && |
784 |
|
QA.compareAndSet(oldA, index, x, null)) |
785 |
|
a[b & mask] = x; |
819 |
|
(al = a.length) > 0) { |
820 |
|
int index = (al - 1) & b; |
821 |
|
ForkJoinTask<?> t = (ForkJoinTask<?>) |
822 |
< |
QA.getVolatile(a, index); |
822 |
> |
QA.getAcquire(a, index); |
823 |
|
if (b++ == base) { |
824 |
|
if (t != null) { |
825 |
|
if (QA.compareAndSet(a, index, t, null)) { |
1542 |
|
int qid = q.id; // (never zero) |
1543 |
|
int index = (al - 1) & b; |
1544 |
|
ForkJoinTask<?> t = (ForkJoinTask<?>) |
1545 |
< |
QA.getVolatile(a, index); |
1545 |
> |
QA.getAcquire(a, index); |
1546 |
|
if (t != null && b++ == q.base && |
1547 |
|
QA.compareAndSet(a, index, t, null)) { |
1548 |
|
if ((q.base = b) - q.top < 0 && qid != lastSignalId) |
1653 |
|
int qid = q.id; |
1654 |
|
int index = (al - 1) & b; |
1655 |
|
ForkJoinTask<?> t = (ForkJoinTask<?>) |
1656 |
< |
QA.getVolatile(a, index); |
1656 |
> |
QA.getAcquire(a, index); |
1657 |
|
if (t != null && b++ == q.base && id == q.source && |
1658 |
|
QA.compareAndSet(a, index, t, null)) { |
1659 |
|
q.base = b; |
1717 |
|
} |
1718 |
|
int index = (al - 1) & b; |
1719 |
|
ForkJoinTask<?> t = (ForkJoinTask<?>) |
1720 |
< |
QA.getVolatile(a, index); |
1720 |
> |
QA.getAcquire(a, index); |
1721 |
|
if (t != null && b++ == q.base && |
1722 |
|
QA.compareAndSet(a, index, t, null)) { |
1723 |
|
q.base = b; |
1780 |
|
(a = q.array) != null && (al = a.length) > 0) { |
1781 |
|
int index = (al - 1) & b; |
1782 |
|
ForkJoinTask<?> t = (ForkJoinTask<?>) |
1783 |
< |
QA.getVolatile(a, index); |
1783 |
> |
QA.getAcquire(a, index); |
1784 |
|
if (t != null && b++ == q.base && |
1785 |
|
QA.compareAndSet(a, index, t, null)) { |
1786 |
|
q.base = b; |
3122 |
|
(al = a.length) > 0) { |
3123 |
|
int index = (al - 1) & b; |
3124 |
|
ForkJoinTask<?> t = (ForkJoinTask<?>) |
3125 |
< |
QA.getVolatile(a, index); |
3125 |
> |
QA.getAcquire(a, index); |
3126 |
|
if (blocker.isReleasable()) |
3127 |
|
break; |
3128 |
|
else if (b++ == w.base) { |