瀏覽代碼

i965/fs: Fix broken rendering in large shaders with UBO loads.

The lowering process creates a new vgrf on gen7 that should be represented
in live interval analysis.  As-is, it was getting a conflicting allocation
with gl_FragDepth in the dolphin emulator, producing broken rendering.

NOTE: This is a candidate for the 9.1 branch.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=61317
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
tags/mesa-9.2-rc1
Eric Anholt 12 年之前
父節點
當前提交
1323772543
共有 1 個檔案被更改,包括 2 行新增0 行删除
  1. 2
    0
      src/mesa/drivers/dri/i965/brw_fs.cpp

+ 2
- 0
src/mesa/drivers/dri/i965/brw_fs.cpp 查看文件

@@ -2499,6 +2499,8 @@ fs_visitor::lower_uniform_pull_constant_loads()
inst->insert_before(setup2);
inst->opcode = FS_OPCODE_UNIFORM_PULL_CONSTANT_LOAD_GEN7;
inst->src[1] = payload;

this->live_intervals_valid = false;
} else {
/* Before register allocation, we didn't tell the scheduler about the
* MRF we use. We know it's safe to use this MRF because nothing

Loading…
取消
儲存