[Mesa-dev] [PATCH 3/5] nv50/ir: it appears that OP_DISCARD can't take a join modifier
Samuel Pitoiset
samuel.pitoiset at gmail.com
Fri Oct 21 12:24:29 UTC 2016
On 10/21/2016 11:18 AM, Samuel Pitoiset wrote:
> Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
>
> On 10/21/2016 08:30 AM, Ilia Mirkin wrote:
>> nvdisasm does not print a .S even though the bit is set.
>>
>> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
>> ---
>> src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
>> b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
>> index cc5d1f4..f6fce44 100644
>> --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
>> +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp
>> @@ -2970,6 +2970,7 @@ FlatteningPass::visit(BasicBlock *bb)
>> insn = insn->prev;
>> if (insn && !insn->getPredicate() &&
>> !insn->asFlow() &&
>> + insn->op != OP_DISCARD &&
>> insn->op != OP_TEXBAR &&
>
> We should *really* improve the situation here, because the check is
> going to be insane...
For example, this is the list of instructions which support a JOIN on
SM35: http://hastebin.com/lamuyocozo
I could try to cook up something better actually. :-)
>
>> !isTextureOp(insn->op) && // probably just nve4
>> !isSurfaceOp(insn->op) && // not confirmed
>>
>
--
-Samuel
More information about the mesa-dev
mailing list