On Tue, Oct 17, 2017 at 2:53 PM, Jason Ekstrand <ja...@jlekstrand.net> wrote: > On Tue, Oct 17, 2017 at 2:18 PM, Matt Turner <matts...@gmail.com> wrote: >> >> On 10/12, Jason Ekstrand wrote: >>> >>> For some reason, the any/all predicates don't work properly with SIMD32. >>> In particular, it appears that a SEL with a QtrCtrl of 2H doesn't read >>> the correct subset of the flag register and you end up getting garbage >>> in the second half. Work around this by using a pair of 1-wide MOVs and >>> scattering the result. This fixes the any/all instructions for SIMD32. >> >> >> Huh. I can see a lot of potential for hardware misbehavior here... >> >> Making things 1-wide makes a lot of sense, regardless of the bug you're >> seeing. I'm in favor of that change. >> >> I picked a SEL instead of a predicated MOV instruction since the latter >> is considered by our optimizer to be a partial write, and as such isn't >> subject to CSE, etc. The difference is probably trivial, but I'd rather >> just commit a patch to change things to be 1-wide, not s/SEL/MOV/, and >> drop the added comments from the code. > > > I'm pretty sure a 1-wide SEL is also going to be considered a partial write.
Oh, true. No preference then. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev