<p dir="ltr"><br>
On May 24, 2016 12:21 AM, "Francisco Jerez" <<a href="mailto:currojerez@riseup.net">currojerez@riseup.net</a>> wrote:<br>
><br>
> This was kind of an abuse of p->compressed, dataport send message<br>
> instructions are always uncompressed.  Use the current execution size<br>
> instead since p->compressed is on its way out.<br>
> ---<br>
>  src/mesa/drivers/dri/i965/brw_eu_emit.c | 14 ++++++++------<br>
>  1 file changed, 8 insertions(+), 6 deletions(-)<br>
><br>
> diff --git a/src/mesa/drivers/dri/i965/brw_eu_emit.c b/src/mesa/drivers/dri/i965/brw_eu_emit.c<br>
> index a649206..10cbbe8 100644<br>
> --- a/src/mesa/drivers/dri/i965/brw_eu_emit.c<br>
> +++ b/src/mesa/drivers/dri/i965/brw_eu_emit.c<br>
> @@ -2886,9 +2886,11 @@ brw_surface_payload_size(struct brw_codegen *p,<br>
>                           bool has_simd4x2,<br>
>                           bool has_simd16)<br>
>  {<br>
> -   if (has_simd4x2 && brw_inst_access_mode(p->devinfo, p->current) == BRW_ALIGN_16)<br>
> +   if (has_simd4x2 &&<br>
> +       brw_inst_access_mode(p->devinfo, p->current) == BRW_ALIGN_16)<br>
>        return 1;<br>
> -   else if (has_simd16 && p->compressed)<br>
> +   else if (has_simd16 &&<br>
> +            brw_inst_exec_size(p->devinfo, p->current) == BRW_EXECUTE_16)<br>
>        return 2 * num_channels;<br>
>     else<br>
>        return num_channels;<br>
> @@ -2907,7 +2909,7 @@ brw_set_dp_untyped_atomic_message(struct brw_codegen *p,<br>
><br>
>     if (devinfo->gen >= 8 || devinfo->is_haswell) {<br>
>        if (brw_inst_access_mode(devinfo, p->current) == BRW_ALIGN_1) {<br>
> -         if (!p->compressed)<br>
> +         if (brw_inst_exec_size(devinfo, p->current) == BRW_EXECUTE_8)</p>
<p dir="ltr">I would guess this change and the similar one below it.  Perhaps we want "!= BRW_EXECUTE_16" instead of "== BRW_EXECUTE_8"?</p>
<p dir="ltr">>              msg_control |= 1 << 4; /* SIMD8 mode */<br>
><br>
>           brw_inst_set_dp_msg_type(devinfo, insn,<br>
> @@ -2920,7 +2922,7 @@ brw_set_dp_untyped_atomic_message(struct brw_codegen *p,<br>
>        brw_inst_set_dp_msg_type(devinfo, insn,<br>
>                                 GEN7_DATAPORT_DC_UNTYPED_ATOMIC_OP);<br>
><br>
> -      if (!p->compressed)<br>
> +      if (brw_inst_exec_size(devinfo, p->current) == BRW_EXECUTE_8)<br>
>           msg_control |= 1 << 4; /* SIMD8 mode */<br>
>     }<br>
><br>
> @@ -2968,7 +2970,7 @@ brw_set_dp_untyped_surface_read_message(struct brw_codegen *p,<br>
>     unsigned msg_control = 0xf & (0xf << num_channels);<br>
><br>
>     if (brw_inst_access_mode(devinfo, p->current) == BRW_ALIGN_1) {<br>
> -      if (p->compressed)<br>
> +      if (brw_inst_exec_size(devinfo, p->current) == BRW_EXECUTE_16)<br>
>           msg_control |= 1 << 4; /* SIMD16 mode */<br>
>        else<br>
>           msg_control |= 2 << 4; /* SIMD8 mode */<br>
> @@ -3012,7 +3014,7 @@ brw_set_dp_untyped_surface_write_message(struct brw_codegen *p,<br>
>     unsigned msg_control = 0xf & (0xf << num_channels);<br>
><br>
>     if (brw_inst_access_mode(devinfo, p->current) == BRW_ALIGN_1) {<br>
> -      if (p->compressed)<br>
> +      if (brw_inst_exec_size(devinfo, p->current) == BRW_EXECUTE_16)<br>
>           msg_control |= 1 << 4; /* SIMD16 mode */<br>
>        else<br>
>           msg_control |= 2 << 4; /* SIMD8 mode */<br>
> --<br>
> 2.7.3<br>
><br>
> _______________________________________________<br>
> mesa-dev mailing list<br>
> <a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
> <a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev">https://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</p>