Mesa (master): radeonsi: fix some reported undefined left-shifts
Nicolai Hähnle
nh at kemper.freedesktop.org
Sat May 7 21:50:57 UTC 2016
Module: Mesa
Branch: master
Commit: 146927ce7b7c45be57655af505e8f21e90ae3928
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=146927ce7b7c45be57655af505e8f21e90ae3928
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: Fri Apr 29 22:29:22 2016 -0500
radeonsi: fix some reported undefined left-shifts
One of these is an unsigned bitfield, which I suspect is a false positive, but
gcc 5.3.1 complains about it with -fsanitize=undefined.
Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
---
src/gallium/drivers/radeonsi/si_state.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
index c6e10b7..c4af77e 100644
--- a/src/gallium/drivers/radeonsi/si_state.c
+++ b/src/gallium/drivers/radeonsi/si_state.c
@@ -464,7 +464,7 @@ static void *si_create_blend_state_mode(struct pipe_context *ctx,
continue;
/* cb_render_state will disable unused ones */
- blend->cb_target_mask |= state->rt[j].colormask << (4 * i);
+ blend->cb_target_mask |= (unsigned)state->rt[j].colormask << (4 * i);
if (!state->rt[j].blend_enable) {
si_pm4_set_reg(pm4, R_028780_CB_BLEND0_CONTROL + i * 4, blend_cntl);
@@ -528,7 +528,7 @@ static void *si_create_blend_state_mode(struct pipe_context *ctx,
}
si_pm4_set_reg(pm4, R_028780_CB_BLEND0_CONTROL + i * 4, blend_cntl);
- blend->blend_enable_4bit |= 0xf << (i * 4);
+ blend->blend_enable_4bit |= 0xfu << (i * 4);
/* This is only important for formats without alpha. */
if (srcRGB == PIPE_BLENDFACTOR_SRC_ALPHA ||
@@ -537,7 +537,7 @@ static void *si_create_blend_state_mode(struct pipe_context *ctx,
dstRGB == PIPE_BLENDFACTOR_SRC_ALPHA_SATURATE ||
srcRGB == PIPE_BLENDFACTOR_INV_SRC_ALPHA ||
dstRGB == PIPE_BLENDFACTOR_INV_SRC_ALPHA)
- blend->need_src_alpha_4bit |= 0xf << (i * 4);
+ blend->need_src_alpha_4bit |= 0xfu << (i * 4);
}
if (blend->cb_target_mask) {
More information about the mesa-commit
mailing list