From: Nicolai Hähnle Date: Thu, 7 Apr 2016 17:19:56 +0000 (-0500) Subject: tgsi/scan: add an assert for the size of the samplers_declared bitfield X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4bfcc86bf977ac18465c7be0a0fa14354b18d7c6;p=mesa.git tgsi/scan: add an assert for the size of the samplers_declared bitfield The literal 1 is a (signed) int, and shifting into the sign bit is undefined in C, so change occurences of 1 to 1u. Reviewed-by: Brian Paul --- diff --git a/src/gallium/auxiliary/tgsi/tgsi_scan.c b/src/gallium/auxiliary/tgsi/tgsi_scan.c index d90fb1d68df..c5ef16810a2 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_scan.c +++ b/src/gallium/auxiliary/tgsi/tgsi_scan.c @@ -464,7 +464,8 @@ scan_declaration(struct tgsi_shader_info *info, } } } else if (file == TGSI_FILE_SAMPLER) { - info->samplers_declared |= 1 << reg; + STATIC_ASSERT(sizeof(info->samplers_declared) * 8 >= PIPE_MAX_SAMPLERS); + info->samplers_declared |= 1u << reg; } else if (file == TGSI_FILE_SAMPLER_VIEW) { unsigned target = fulldecl->SamplerView.Resource; assert(target < TGSI_TEXTURE_UNKNOWN);