[Mesa-dev] [PATCH 06/14] i965/fs: Initialize a builder explicitly in opt_peephole_predicated_break().
Francisco Jerez
currojerez at riseup.net
Tue Jul 28 01:23:14 PDT 2015
This wasn't taking into account the execution controls of the original
instruction, but it was most likely not a bug because control flow
instructions are typically full width.
---
src/mesa/drivers/dri/i965/brw_fs_peephole_predicated_break.cpp | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_peephole_predicated_break.cpp b/src/mesa/drivers/dri/i965/brw_fs_peephole_predicated_break.cpp
index d92d4bbd..b75f40b 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_peephole_predicated_break.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_peephole_predicated_break.cpp
@@ -24,6 +24,8 @@
#include "brw_fs.h"
#include "brw_cfg.h"
+using namespace brw;
+
/** @file brw_fs_peephole_predicated_break.cpp
*
* Loops are often structured as
@@ -85,9 +87,9 @@ fs_visitor::opt_peephole_predicated_break()
* instruction to set the flag register.
*/
if (devinfo->gen == 6 && if_inst->conditional_mod) {
- bld.at(if_block, if_inst)
- .CMP(bld.null_reg_d(), if_inst->src[0], if_inst->src[1],
- if_inst->conditional_mod);
+ const fs_builder ibld(this, if_block, if_inst);
+ ibld.CMP(ibld.null_reg_d(), if_inst->src[0], if_inst->src[1],
+ if_inst->conditional_mod);
jump_inst->predicate = BRW_PREDICATE_NORMAL;
} else {
jump_inst->predicate = if_inst->predicate;
--
2.4.6
More information about the mesa-dev
mailing list