[Mesa-dev] [PATCH 12/32] i965/fs: Fix lower_load_payload() to take into account stride in the metadata guess.

Francisco Jerez currojerez at riseup.net
Fri Feb 20 11:37:10 PST 2015


Jason Ekstrand <jason at jlekstrand.net> writes:

> Where are you getting a destination stride in a load_payload?  The whole
> point of load_payload was to remove partial writes so this seems to go
> against everything it's intended for.
> --Jason

Yeah, maybe...  This case was triggered by some of my image_load_store
code that ends up using byte types with stride=4 for some image formats.

>
> On Fri, Feb 6, 2015 at 9:42 AM, Francisco Jerez <currojerez at riseup.net>
> wrote:
>
>> ---
>>  src/mesa/drivers/dri/i965/brw_fs.cpp | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp
>> b/src/mesa/drivers/dri/i965/brw_fs.cpp
>> index 163aa41..8da1f47 100644
>> --- a/src/mesa/drivers/dri/i965/brw_fs.cpp
>> +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
>> @@ -3074,7 +3074,7 @@ fs_visitor::lower_load_payload()
>>           bool force_sechalf = inst->force_sechalf &&
>>                                !inst->force_writemask_all;
>>           bool toggle_sechalf = inst->dst.width == 16 &&
>> -                               type_sz(inst->dst.type) == 4 &&
>> +                               type_sz(inst->dst.type) * inst->dst.stride
>> == 4 &&
>>                                 !inst->force_writemask_all;
>>           for (int i = 0; i < inst->regs_written; ++i) {
>>              metadata[dst_reg + i].written = true;
>> --
>> 2.1.3
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 212 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150220/84bc1804/attachment.sig>


More information about the mesa-dev mailing list