diff options
author | Kenneth Graunke <[email protected]> | 2019-06-20 00:47:33 -0500 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2019-06-20 13:32:16 -0500 |
commit | db8f57a5cb4ab8e1ad789793678797c04e95de21 (patch) | |
tree | 4224b22bd80bf35bd2cea71c8482ff19f51e96b8 /src/gallium | |
parent | ecc500398f29c2dd7a86de7dec20f121974c65a2 (diff) |
iris: Don't check VF address high bits when there is no buffer.
If there is no buffer, then it doesn't matter. Leave the old stale
high bits in place (for next time) and don't bother invalidating.
Cuts 5.6% of the flushes in the Civilization VI demo on Kabylake GT2.
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/iris/iris_blorp.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/iris/iris_blorp.c b/src/gallium/drivers/iris/iris_blorp.c index 209940e9bc7..ede679e731a 100644 --- a/src/gallium/drivers/iris/iris_blorp.c +++ b/src/gallium/drivers/iris/iris_blorp.c @@ -212,7 +212,7 @@ blorp_vf_invalidate_for_vb_48b_transitions(struct blorp_batch *blorp_batch, struct iris_bo *bo = addrs[i].buffer; uint16_t high_bits = bo ? bo->gtt_offset >> 32u : 0; - if (high_bits != ice->state.last_vbo_high_bits[i]) { + if (bo && high_bits != ice->state.last_vbo_high_bits[i]) { need_invalidate = true; ice->state.last_vbo_high_bits[i] = high_bits; } |