On Mon, Jun 23, 2014 at 7:36 PM, Ben Widawsky <b...@bwidawsk.net> wrote:
> On Mon, Jun 23, 2014 at 01:30:14PM -0700, Matt Turner wrote:
>> The emit_math?_gen? functions serve to implement workarounds for the
>> math instruction, none of which exist on Gen8+.
>
> There are still several restrictions with the math instruction on gen8.
> Looking at the existing code, I realize I do not quite see even all the
> gen7 restrictions, so I am not qualified to determine if you accounted
> for gen8.

We don't represent some of these at this level, like vertical stride.
When we're assembling instructions later (in brw_eu_emit.c:gen6_math
and gen8_generator.cpp:gen8_generator::math which should be going away
soon) we have a bunch of assertions that verify these restrictions. It
looks like you're right that we don't have asserts to check the Gen7
restrictions, and our asserts in the Gen8 code seem to be lacking the
check you mentioned below.

> In particular, stride of src, and dest must be the same, and
> "Regioning must ensure Src.Vstride = Src.Width * Src.Hstride"
>
> The rest of the series is:
> Reviewed-by: Ben Widawsky <b...@bwidawsk.net>
>
> If you can convince me these cases are solid here, this one is also r-b
>
> Thanks. (sorry for my ignorance)

Thanks for the review and the good question.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to