i965 gen6: Fix incorrect order of dwords in gen6_update_sol_indices()
When updating SOL indices, we were accidentally putting the starting index in dword 1 and the SVBI number to increment in dword 2--these should be reversed. Usually both of these values are zero, so we didn't see any problem. However, if a transform feedback operation spans multiple batch buffers, the starting index will be nonzero. Fixes piglit test "EXT_transform_feedback/intervening-read output". Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
@@ -82,8 +82,8 @@ gen6_update_sol_indices(struct brw_context *brw)
|
||||
|
||||
BEGIN_BATCH(4);
|
||||
OUT_BATCH(_3DSTATE_GS_SVB_INDEX << 16 | (4 - 2));
|
||||
OUT_BATCH(brw->sol.svbi_0_starting_index); /* BRW_NEW_SOL_INDICES */
|
||||
OUT_BATCH(0);
|
||||
OUT_BATCH(brw->sol.svbi_0_starting_index); /* BRW_NEW_SOL_INDICES */
|
||||
OUT_BATCH(brw->sol.svbi_0_max_index); /* BRW_NEW_SOL_INDICES */
|
||||
ADVANCE_BATCH();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user