mirror of
https://github.com/italicsjenga/vello.git
synced 2025-01-10 12:41:30 +11:00
Also fix write-after-read in elements.com
On further testing, this resolves a hard lockup on Intel 630 on the mmark stress test, so is worth getting into the repo.
This commit is contained in:
parent
69b6632085
commit
8015eb25a1
|
@ -248,9 +248,10 @@ void main() {
|
|||
// The flag load is done only in the last thread. However, because the
|
||||
// translation of memoryBarrierBuffer to Metal requires uniform control
|
||||
// flow, we broadcast it to all threads.
|
||||
barrier();
|
||||
memoryBarrierBuffer();
|
||||
barrier();
|
||||
uint flag = sh_flag;
|
||||
barrier();
|
||||
|
||||
if (flag == FLAG_PREFIX_READY) {
|
||||
if (gl_LocalInvocationID.x == WG_SIZE - 1) {
|
||||
|
@ -293,6 +294,7 @@ void main() {
|
|||
}
|
||||
barrier();
|
||||
flag = sh_flag;
|
||||
barrier();
|
||||
if (flag == FLAG_PREFIX_READY) {
|
||||
break;
|
||||
}
|
||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue