summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIago Toral Quiroga <itoral@igalia.com>2015-04-22 08:01:15 +0200
committerSamuel Iglesias Gonsalvez <siglesias@igalia.com>2015-07-09 12:53:55 +0200
commit598630c3f7df9424fa8bc90f1d4e13e9c04f670c (patch)
tree321b63d4af8aad0c013f759eae4ccf72f912b2f9
parentea60c8269b512ad4db73c43c7a47d9191afa0610 (diff)
i965/vec4: Skip dependency control for opcodes emitting multiple instructions
The same we did for the fragment shader with commit 7452f18b.
-rw-r--r--src/mesa/drivers/dri/i965/brw_vec4_generator.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_generator.cpp b/src/mesa/drivers/dri/i965/brw_vec4_generator.cpp
index 443bf4809a..8876e02b8c 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_generator.cpp
+++ b/src/mesa/drivers/dri/i965/brw_vec4_generator.cpp
@@ -1141,6 +1141,7 @@ vec4_generator::generate_code(const cfg_t *cfg)
foreach_block_and_inst (block, vec4_instruction, inst, cfg) {
struct brw_reg src[3], dst;
+ bool multiple_instructions_emitted = false;
if (unlikely(debug_flag))
annotate(p->devinfo, &annotation, cfg, inst, p->next_insn_offset);
@@ -1609,6 +1610,9 @@ vec4_generator::generate_code(const cfg_t *cfg)
unreachable("Unsupported opcode");
}
+ if (multiple_instructions_emitted)
+ continue;
+
if (inst->opcode == VEC4_OPCODE_PACK_BYTES) {
/* Handled dependency hints in the generator. */