https://bugs.winehq.org/show_bug.cgi?id=43406
--- Comment #15 from Philip Rebohle philip.rebohle@tu-dortmund.de --- One thing I noticed when rewriting the shader is that wine inserts barrier() calls when encountering a sync_g_t instruction, but does not insert a memory barrier to synchronize shared memory access. I'm not sure if this is correct.
Manually inserting such barriers does not fix the original shader on radeonsi though. I'm pretty sure that this is indeed a Mesa bug.