On 01/20/2015 12:16 AM, Kenneth Graunke wrote:
> On Monday, January 19, 2015 03:31:06 PM Matt Turner wrote:
>> ---
>>  src/mesa/drivers/dri/i965/brw_shader.cpp                | 10 ++++++++++
>>  src/mesa/drivers/dri/i965/brw_shader.h                  |  1 +
>>  src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp |  6 +-----
>>  3 files changed, 12 insertions(+), 5 deletions(-)
>>
>> diff --git a/src/mesa/drivers/dri/i965/brw_shader.cpp 
>> b/src/mesa/drivers/dri/i965/brw_shader.cpp
>> index cbdf976..c6fead7 100644
>> --- a/src/mesa/drivers/dri/i965/brw_shader.cpp
>> +++ b/src/mesa/drivers/dri/i965/brw_shader.cpp
>> @@ -678,6 +678,16 @@ backend_reg::is_accumulator() const
>>  }
>>  
>>  bool
>> +backend_instruction::is_3src() const
>> +{
>> +   return opcode == BRW_OPCODE_LRP ||
>> +          opcode == BRW_OPCODE_MAD ||
>> +          opcode == BRW_OPCODE_BFE ||
>> +          opcode == BRW_OPCODE_BFI2 ||
>> +          opcode == BRW_OPCODE_CSEL;

Can this also replace is_3src() in brw_eu_compact.c?  FWIW, that
function was already doing basically what Ken suggests below... and you
wrote it!  (Commit 31eed95b)

> Pah, manual listings of things :)  Let's do even better:
> 
>    return opcode < 128 && opcode_descs[op].nsrc == 3;

Shouldn't that be

   return opcode < ARRAY_SIZE(opcode_descs) && opcode_descs[opode].nsrc
== 3;

> That would get
> Reviewed-by: Kenneth Graunke <kenn...@whitecape.org>
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to