diff options
author | Iago Toral Quiroga <itoral@igalia.com> | 2015-04-22 08:01:15 +0200 |
---|---|---|
committer | Samuel Iglesias Gonsalvez <siglesias@igalia.com> | 2015-07-09 12:53:55 +0200 |
commit | 598630c3f7df9424fa8bc90f1d4e13e9c04f670c (patch) | |
tree | 321b63d4af8aad0c013f759eae4ccf72f912b2f9 | |
parent | ea60c8269b512ad4db73c43c7a47d9191afa0610 (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.cpp | 4 |
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. */ |