From 146927ce7b7c45be57655af505e8f21e90ae3928 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Nicolai=20H=C3=A4hnle?= Date: Fri, 29 Apr 2016 22:29:22 -0500 Subject: [PATCH] radeonsi: fix some reported undefined left-shifts MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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 Reviewed-by: Marek Olšák --- 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 c6e10b76f70..c4af77e149c 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) { -- 2.30.2