瀏覽代碼

vc4: Fix assertion about SFU versus texturing.

We're supposed to be checking that nothing else writes r4, which is done
by the TMU result collection signal, not the coordinate setup.

Avoids a regression when QPU instruction scheduling is introduced.
tags/10.5-branchpoint
Eric Anholt 10 年之前
父節點
當前提交
a7b1a93137
共有 1 個檔案被更改,包括 4 行新增3 行删除
  1. 4
    3
      src/gallium/drivers/vc4/vc4_qpu_validate.c

+ 4
- 3
src/gallium/drivers/vc4/vc4_qpu_validate.c 查看文件

@@ -202,12 +202,13 @@ vc4_qpu_validate(uint64_t *insts, uint32_t num_inst)
int last_sfu_inst = -10;
for (int i = 0; i < num_inst - 1; i++) {
uint64_t inst = insts[i];
uint32_t sig = QPU_GET_FIELD(inst, QPU_SIG);

assert(i - last_sfu_inst > 2 ||
(!writes_sfu(inst) &&
!writes_reg(inst, QPU_W_TMU0_S) &&
!writes_reg(inst, QPU_W_TMU1_S) &&
QPU_GET_FIELD(inst, QPU_SIG) != QPU_SIG_COLOR_LOAD));
sig != QPU_SIG_LOAD_TMU0 &&
sig != QPU_SIG_LOAD_TMU1 &&
sig != QPU_SIG_COLOR_LOAD));

if (writes_sfu(inst))
last_sfu_inst = i;

Loading…
取消
儲存