summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gmail.com>2015-11-19 21:51:37 -0800
committerMatt Turner <mattst88@gmail.com>2015-11-24 09:58:33 -0800
commit2d8c5299032d229c8f6e936db5644cd53716e6c1 (patch)
treed2857fc24dd94a099b25e7c7460968f2cab3ea99 /src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
parent799f924073c62c3a012c48a51895b46ad621e36c (diff)
downloadexternal_mesa3d-2d8c5299032d229c8f6e936db5644cd53716e6c1.zip
external_mesa3d-2d8c5299032d229c8f6e936db5644cd53716e6c1.tar.gz
external_mesa3d-2d8c5299032d229c8f6e936db5644cd53716e6c1.tar.bz2
i965: Prevent implicit upcasts to brw_reg.
Now that backend_reg inherits from brw_reg, we have to be careful to avoid the object slicing problem. Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp')
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
index 62ae9ab..fa29a09 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp
@@ -532,14 +532,14 @@ fs_visitor::try_constant_propagate(fs_inst *inst, acp_entry *entry)
if (inst->src[i].abs) {
if ((devinfo->gen >= 8 && is_logic_op(inst->opcode)) ||
- !brw_abs_immediate(val.type, &val)) {
+ !brw_abs_immediate(val.type, &val.as_brw_reg())) {
continue;
}
}
if (inst->src[i].negate) {
if ((devinfo->gen >= 8 && is_logic_op(inst->opcode)) ||
- !brw_negate_immediate(val.type, &val)) {
+ !brw_negate_immediate(val.type, &val.as_brw_reg())) {
continue;
}
}