On 7 December 2011 13:03, Eric Anholt <e...@anholt.net> wrote: > On Wed, 7 Dec 2011 11:09:11 -0800, Paul Berry <stereotype...@gmail.com> > wrote: > > - assert(!p->single_program_flow); > > + /* In principle, we shouldn't be patching IF and ELSE instructions in > > + * single program flow mode when gen < 6, because in single program > flow > > + * mode on those platforms, we convert flow control instructions to > > + * conditional ADDs that operate on IP (see brw_ENDIF). > > + * > > + * However, on Gen6, writing to IP doesn't work in single program > flow mode > > + * (see the SandyBridge PRM, Volume 4 part 2, p79: "When SPF is ON, > IP may > > + * not be updated by non-flow control instructions."). And on later > > + * platforms, there is no significant benefit to converting control > flow > > + * instructions to conditional ADDs. So we do patch IF and ELSE > > + * instructions in single program flow mode on those platforms. > > + */ > > + if (intel->gen < 6) > > + assert(!p->single_program_flow); > > I stumbled over reading this comment the first couple of times. I think > s/In principle,// would have made it clear for me -- I read the "However > on Gen6" paragraph as trying to explain an exception to "in principle, > ... when gen < 6", when it's really true that we don't patch if/else in > SPF for gen < 6. > > >
Whoops, you're right. I'll fix this before pushing.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev