From: Ian Romanick Date: Sat, 6 Jan 2018 02:40:21 +0000 (-0800) Subject: glsl/linker: Mark no locations as invalid instead of marking all locations X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0c9df36157aca1e725f037e5adc54100aa387bd3;p=mesa.git glsl/linker: Mark no locations as invalid instead of marking all locations If max_index were ever 32, the linker would have marked all 32 locations as invalid instead of marking none of them as invalid. It's a good thing the maximum value actually set by any driver for MaxAttribs is 16. Found by inspection while investigating CID 1369628. Signed-off-by: Ian Romanick Reviewed-by: Alejandro PiƱeiro --- diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp index 6f9680aae78..d1f10eeecd8 100644 --- a/src/compiler/glsl/linker.cpp +++ b/src/compiler/glsl/linker.cpp @@ -2583,7 +2583,7 @@ assign_attribute_or_color_locations(void *mem_ctx, /* Mark invalid locations as being used. */ unsigned used_locations = (max_index >= 32) - ? ~0 : ~((1 << max_index) - 1); + ? 0 : ~((1 << max_index) - 1); unsigned double_storage_locations = 0; assert((target_index == MESA_SHADER_VERTEX)