[Mesa-dev] [PATCH 11/16] i965/fs: Add pass to propagate conditional modifiers.

Matt Turner mattst88 at gmail.com
Tue Jan 20 15:04:29 PST 2015


On Tue, Jan 20, 2015 at 2:56 PM, Jason Ekstrand <jason at jlekstrand.net> wrote:
> On Mon, Jan 19, 2015 at 3:31 PM, Matt Turner <mattst88 at gmail.com> wrote:
>> +         if (scan_inst->dst.file == GRF &&
>> +             scan_inst->dst.reg == inst->src[0].reg &&
>> +             scan_inst->dst.reg_offset == inst->src[0].reg_offset &&
>> +             !scan_inst->is_partial_write()) {
>
>
> I don't think this is quite the right condition.  We want to do the
> replacement under these conditions but if it's a partial write we want to
> break without replacement.  In other words, we want to break whenever
> something *may* have touched it and only consider it as a substitute for the
> CMP if they overwrote it entirely.

Ah, yes. I'll start the block with

if (scan_inst->is_partial_write())
   break;

Thanks.


More information about the mesa-dev mailing list