tgsi: Don't ignore indirect registers in tgsi_check_soa_dependencies

Cherry-picked from master commit c66f0c4629
This commit is contained in:
José Fonseca 2010-09-21 02:16:19 +02:00 committed by Jakob Bornecrantz
parent 094fe2aa23
commit 15ad34f012

View file

@ -605,8 +605,10 @@ tgsi_check_soa_dependencies(const struct tgsi_full_instruction *inst)
for (i = 0; i < inst->Instruction.NumSrcRegs; i++) {
if ((inst->Src[i].Register.File ==
inst->Dst[0].Register.File) &&
(inst->Src[i].Register.Index ==
inst->Dst[0].Register.Index)) {
((inst->Src[i].Register.Index ==
inst->Dst[0].Register.Index) ||
inst->Src[i].Register.Indirect ||
inst->Dst[0].Register.Indirect)) {
/* loop over dest channels */
uint channelsWritten = 0x0;
FOR_EACH_ENABLED_CHANNEL(*inst, chan) {